-
-
Notifications
You must be signed in to change notification settings - Fork 824
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dev/core#2659 Move group cleanup to latest release
- Loading branch information
1 parent
cd11266
commit 7ca7e4d
Showing
3 changed files
with
166 additions
and
57 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,117 @@ | ||
# Helper to run bin/regen.sh to regenerate civicrm_generated.mysql | ||
# 1. In your civicrm-core fork on github.com, click on the Actions tab. | ||
# 2. Click on Regen on the left. | ||
# 3. On the right you'll see a dropdown "Run workflow". | ||
# 4. From the Branch field in the dropdown pick your branch. | ||
# 5. Optionally choose to have it add a commit with the new file to your branch at the end, otherwise it will give you the file to download. | ||
# Note it does not autosquash but typically this would be done at the end and is acceptable as its own commit. | ||
# 6. Wait about 2-3 minutes until the spinning yellow turns green. | ||
# 7. If you didn't choose to commit, then to get to the download click on the green. | ||
# 7. Scroll down to Artifacts. | ||
# 8. There's your file available for download. | ||
name: Regen | ||
on: | ||
workflow_dispatch: | ||
inputs: | ||
civiver: | ||
description: CiviCRM version | ||
required: true | ||
default: 'master' | ||
autocommit: | ||
description: Autocommit to branch (y or n) | ||
required: false | ||
default: 'n' | ||
jobs: | ||
runregen: | ||
runs-on: ubuntu-latest | ||
name: Run Regen | ||
services: | ||
mysql: | ||
image: mysql:8.0 | ||
env: | ||
MYSQL_ALLOW_EMPTY_PASSWORD: no | ||
MYSQL_DATABASE: db | ||
MYSQL_ROOT_PASSWORD: passpasspw | ||
ports: | ||
- 3306 | ||
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 | ||
steps: | ||
- uses: shivammathur/setup-php@v2 | ||
with: | ||
php-version: 7.4 | ||
extensions: dom, curl, libxml, mbstring, zip, pdo, mysql, pdo_mysql, bcmath, soap, intl, gd, exif, iconv | ||
coverage: none | ||
tools: composer:v2 | ||
- name: Sanity check | ||
run: | | ||
if [ "$GITHUB_REPOSITORY" = "civicrm/civicrm-core" ]; then | ||
echo "You need to run this in your own fork." | ||
exit -1 | ||
fi | ||
- name: Download cv | ||
run: | | ||
cd $GITHUB_WORKSPACE | ||
git clone https://github.com/civicrm/cv.git civicrm-cv | ||
cd civicrm-cv | ||
# downloads-plugin is locked at 2.1 but that doesn't work with composer v2 | ||
rm composer.lock | ||
COMPOSER_MEMORY_LIMIT=-1 composer install | ||
- name: Download and install stuff | ||
run: | | ||
cd $GITHUB_WORKSPACE | ||
export DRUPVER=`php -r '$xml = simplexml_load_file("https://updates.drupal.org/release-history/drupal/7.x"); echo $xml->releases[0]->release->version;'` | ||
curl -L -o drupal.tgz https://ftp.drupal.org/files/projects/drupal-$DRUPVER.tar.gz | ||
tar xzf drupal.tgz | ||
mv drupal-$DRUPVER drupal | ||
cd drupal | ||
composer require drush/drush:'^8' | ||
./vendor/drush/drush/drush -y -l http://civi.localhost site-install standard --db-url='mysql://root:passpasspw@127.0.0.1:${{ job.services.mysql.ports[3306] }}/db' --site-name=TestCivi --account-pass=admin | ||
chmod +w sites/default | ||
cd sites/all/modules | ||
# check out my fork's branch as selected from the dropdown | ||
BRANCHNAME=${GITHUB_REF##*/} | ||
echo "Cloning branch $BRANCHNAME from $GITHUB_SERVER_URL/$GITHUB_REPOSITORY" | ||
git clone -b $BRANCHNAME --depth 1 $GITHUB_SERVER_URL/$GITHUB_REPOSITORY.git civicrm | ||
cd civicrm | ||
git clone -b 7.x-${{ github.event.inputs.civiver }} --depth 1 https://github.com/civicrm/civicrm-drupal.git drupal | ||
git clone -b ${{ github.event.inputs.civiver }} --depth 1 https://github.com/civicrm/civicrm-packages.git packages | ||
COMPOSER_MEMORY_LIMIT=-1 composer install | ||
npm install | ||
cd xml | ||
php GenCode.php | ||
cd .. | ||
$GITHUB_WORKSPACE/civicrm-cv/bin/cv core:install --cms-base-url=http://civi.localhost | ||
# In this environment in this particular repo, we are under a workspace folder that contains the literal "civicrm-core" in the path, which makes civicrm.config.php think we are a composer install, so it gets the paths wrong. | ||
echo '<?php define("CIVICRM_CONFDIR", "/home/runner/work/civicrm-core/civicrm-core/drupal/sites/default");' > settings_location.php | ||
- name: regen | ||
run: | | ||
cd $GITHUB_WORKSPACE/drupal/sites/all/modules/civicrm/bin | ||
export PATH=$PATH:$GITHUB_WORKSPACE/drupal/vendor/drush/drush | ||
cp setup.conf.txt setup.conf | ||
sed -i -e "s#CIVISOURCEDIR=#CIVISOURCEDIR=$GITHUB_WORKSPACE/drupal/sites/all/modules/civicrm#" setup.conf | ||
sed -i -e 's/DBUSER=/DBUSER=root/' setup.conf | ||
sed -i -e 's/DBPASS=/DBPASS=passpasspw/' setup.conf | ||
sed -i -e 's/DBNAME=/DBNAME=db/' setup.conf | ||
sed -i -e 's/DBHOST=/DBHOST=127.0.0.1/' setup.conf | ||
sed -i -e 's/DBPORT=/DBPORT=${{ job.services.mysql.ports[3306] }}/' setup.conf | ||
sed -i -e 's/GENCODE_CMS=""/GENCODE_CMS=Drupal/' setup.conf | ||
# next two lines just make it easier to see what's going on if it fails | ||
cat setup.conf | ||
sed -i -e 's/set -e/set -e\nset -x/' setup.sh | ||
cd .. | ||
bin/regen.sh | ||
- name: maybe commit | ||
if: ${{ success() && github.event.inputs.autocommit == 'y' }} | ||
run: | | ||
cd $GITHUB_WORKSPACE/drupal/sites/all/modules/civicrm | ||
git config --global user.name "$GITHUB_ACTOR" | ||
git config --global user.email "regen@civicrm.org" | ||
# We don't use `-a` because often there's other files that get spurious updates like composer.lock | ||
git commit -m "regenerate civicrm_generated" sql/civicrm_generated.mysql | ||
git remote add mine https://${GITHUB_ACTOR}:${{ secrets.GITHUB_TOKEN }}@github.com/$GITHUB_REPOSITORY.git | ||
git push mine | ||
- uses: actions/upload-artifact@v2 | ||
if: ${{ success() }} | ||
with: | ||
name: the_file_you_requested | ||
path: '/home/runner/work/civicrm-core/civicrm-core/drupal/sites/all/modules/civicrm/sql/civicrm_generated.mysql' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters