From b21f0a7c70dd8037d6bb35d09a4d275e300fa216 Mon Sep 17 00:00:00 2001 From: MGatner Date: Fri, 28 Feb 2020 16:19:04 -0500 Subject: [PATCH 01/11] Being deployment workflow --- .github/workflows/deploy.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/workflows/deploy.yml diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 000000000000..49c62cfe9825 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,25 @@ +name: Deploy + +on: + release: + types: [published] + +jobs: + deploy: + runs-on: ubuntu-latest + + steps: + - name: Checkout main + uses: actions/checkout@v2 + + - name: Checkout framework + uses: actions/checkout@v2 + with: + repository: codeigniter4/framework + path: framework + + - name: Checkout appstarter + uses: actions/checkout@v2 + with: + repository: codeigniter4/appstarter + path: appstarter From c5d43b9161c62b891d2f0033527b635da4d3c384 Mon Sep 17 00:00:00 2001 From: MGatner Date: Sun, 1 Mar 2020 12:07:39 -0500 Subject: [PATCH 02/11] Add to workflow --- .github/workflows/deploy.yml | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 49c62cfe9825..6b1004ba1ad1 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -5,21 +5,46 @@ on: types: [published] jobs: - deploy: + preflight: runs-on: ubuntu-latest steps: - - name: Checkout main + - name: Checkout source uses: actions/checkout@v2 + with: + path: source + + - name: Version message + run: echo Deploying version ${GITHUB_REF} + + framework: + runs-on: ubuntu-latest + + needs: preflight + steps: - name: Checkout framework uses: actions/checkout@v2 with: repository: codeigniter4/framework path: framework + - name: Deploy framework + run: admin/release-framework ${GITHUB_WORKSPACE}/source ${GITHUB_WORKSPACE}/framework ${GITHUB_REF} + working-directory: source + + appstarter: + runs-on: ubuntu-latest + + needs: preflight + + steps: - name: Checkout appstarter uses: actions/checkout@v2 with: repository: codeigniter4/appstarter path: appstarter + + - name: Deploy appstarter + run: admin/release-appstarter ${GITHUB_WORKSPACE}/source ${GITHUB_WORKSPACE}/appstarter ${GITHUB_REF} + working-directory: source From 8df0627fae2df5a8d7cecab5f83436e60b7dd60c Mon Sep 17 00:00:00 2001 From: MGatner Date: Tue, 3 Mar 2020 15:10:03 -0500 Subject: [PATCH 03/11] Add deploy scripts, workflow-fu --- .github/scripts/deploy-appstarter | 42 +++++++++++++++++++++ .github/scripts/deploy-framework | 34 +++++++++++++++++ .github/workflows/deploy.yml | 63 +++++++++++++++++++++---------- 3 files changed, 119 insertions(+), 20 deletions(-) create mode 100644 .github/scripts/deploy-appstarter create mode 100644 .github/scripts/deploy-framework diff --git a/.github/scripts/deploy-appstarter b/.github/scripts/deploy-appstarter new file mode 100644 index 000000000000..cd8d4e890e3f --- /dev/null +++ b/.github/scripts/deploy-appstarter @@ -0,0 +1,42 @@ +#!/bin/bash + +## Build app starter distributable + +# Setup variables +. admin/release-config +TARGET=dist/appstarter +cd $TARGET +git checkout $branch + +#--------------------------------------------------- +echo -e "${BOLD}Build the framework distributable${NORMAL}" + +echo -e "${BOLD}Copy the main files/folders...${NORMAL}" +releasable='app public writable README.md contributing.md env license.txt spark .gitignore' +for fff in $releasable ; do + if [ -d "$fff" ] ; then + rm -rf $fff + fi + cp -rf ${CI_DIR}/$fff . +done + +rm -rf tests +mkdir tests +cp -rf ${CI_DIR}/tests/_support tests/ + +echo -e "${BOLD}Override as needed...${NORMAL}" +cp -rf ${CI_DIR}/admin/starter/* . + +#--------------------------------------------------- +# And finally, get ready for merging +echo -e "${BOLD}Assemble the pieces...${NORMAL}" +git add . +git commit -S -m "Release ${RELEASE}" +git checkout master +git merge $branch + +cd $CI_DIR + +#--------------------------------------------------- +# Done for now +echo -e "${BOLD}Distributable app starter ready..${NORMAL}" diff --git a/.github/scripts/deploy-framework b/.github/scripts/deploy-framework new file mode 100644 index 000000000000..7bb28b76db09 --- /dev/null +++ b/.github/scripts/deploy-framework @@ -0,0 +1,34 @@ +#!/bin/bash + +## Deploy codeigniter4/framework + +# Setup variables +SOURCE=$1 +TARGET=$2 +RELEASE=$3 +MESSAGE="$4" + +# Prepare the source +cd $SOURCE +git checkout master + +# Prepare the target +cd $TARGET +git checkout master + +# Copy common files +releasable='app public system writable contributing env license.txt spark .gitignore' +for fff in $releasable ; do + if [ -d "$fff" ] ; then + rm -rf $fff + fi + cp -Rf ${TARGET}/$fff ./ +done + +# Copy framework-specific files +cp -Rf ${SOURCE}/admin/framework/* ./ + +# Commit the changes +git add . +git commit -S -m "Release ${RELEASE}" +git push diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 6b1004ba1ad1..32aab9782a6a 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -5,46 +5,69 @@ on: types: [published] jobs: - preflight: + framework: runs-on: ubuntu-latest steps: + - name: Release message + id: message + uses: actions/github-script@0.8.0 + with: + result-encoding: string + script: | + return github.repos.getReleaseByTag({ + owner: context.repo.owner, + repo: context.repo.repo, + tag: ${GITHUB_REF##*/} + }).body + - name: Checkout source uses: actions/checkout@v2 with: path: source - - name: Version message - run: echo Deploying version ${GITHUB_REF} - - framework: - runs-on: ubuntu-latest - - needs: preflight - - steps: - - name: Checkout framework + - name: Checkout target uses: actions/checkout@v2 with: repository: codeigniter4/framework + token: ${{ secrets.ACCESS_TOKEN }} path: framework - - name: Deploy framework - run: admin/release-framework ${GITHUB_WORKSPACE}/source ${GITHUB_WORKSPACE}/framework ${GITHUB_REF} - working-directory: source + - name: Chmod + run: chmod +x ./source/.github/scripts/deploy-framework + + - name: Deploy + run: ./source/.github/scripts/deploy-framework ${GITHUB_WORKSPACE}/source ${GITHUB_WORKSPACE}/framework ${GITHUB_REF##*/} "${{ steps.message.outputs.result }}" appstarter: runs-on: ubuntu-latest - needs: preflight - steps: - - name: Checkout appstarter + - name: Release message + id: message + uses: actions/github-script@0.8.0 + with: + result-encoding: string + script: | + console.log(github.repos.getLatestRelease({ + owner: context.repo.owner, + repo: context.repo.repo + }) + + - name: Checkout source + uses: actions/checkout@v2 + with: + path: source + + - name: Checkout target uses: actions/checkout@v2 with: repository: codeigniter4/appstarter + token: ${{ secrets.ACCESS_TOKEN }} path: appstarter - - name: Deploy appstarter - run: admin/release-appstarter ${GITHUB_WORKSPACE}/source ${GITHUB_WORKSPACE}/appstarter ${GITHUB_REF} - working-directory: source + - name: Chmod + run: chmod +x ./source/.github/scripts/deploy-appstarter + + - name: Merge + run: ./source/.github/scripts/deploy-appstarter ${GITHUB_WORKSPACE}/source ${GITHUB_WORKSPACE}/appstarter ${GITHUB_REF##*/} From 291dd547ca34000fc24d2b761ba2d83f06f76e3d Mon Sep 17 00:00:00 2001 From: MGatner Date: Tue, 3 Mar 2020 21:53:23 -0500 Subject: [PATCH 04/11] Tweak workflow, bugfix script --- .github/scripts/deploy-framework | 10 ++++-- .github/workflows/deploy.yml | 57 +++++++++++++++++++------------- 2 files changed, 42 insertions(+), 25 deletions(-) diff --git a/.github/scripts/deploy-framework b/.github/scripts/deploy-framework index 7bb28b76db09..3ff694be7b08 100644 --- a/.github/scripts/deploy-framework +++ b/.github/scripts/deploy-framework @@ -6,7 +6,9 @@ SOURCE=$1 TARGET=$2 RELEASE=$3 -MESSAGE="$4" + +echo "Preparing for version $3" +echo "Merging files from $1 to $2" # Prepare the source cd $SOURCE @@ -22,12 +24,16 @@ for fff in $releasable ; do if [ -d "$fff" ] ; then rm -rf $fff fi - cp -Rf ${TARGET}/$fff ./ + cp -Rf ${SOURCE}/$fff ./ done # Copy framework-specific files cp -Rf ${SOURCE}/admin/framework/* ./ +# Self identify +git config --global user.email "releasebot@codeigniter.com" +git config --global user.name "CodeIgniter Release Bot" + # Commit the changes git add . git commit -S -m "Release ${RELEASE}" diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 32aab9782a6a..c9301728fbc1 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -9,18 +9,6 @@ jobs: runs-on: ubuntu-latest steps: - - name: Release message - id: message - uses: actions/github-script@0.8.0 - with: - result-encoding: string - script: | - return github.repos.getReleaseByTag({ - owner: context.repo.owner, - repo: context.repo.repo, - tag: ${GITHUB_REF##*/} - }).body - - name: Checkout source uses: actions/checkout@v2 with: @@ -29,7 +17,7 @@ jobs: - name: Checkout target uses: actions/checkout@v2 with: - repository: codeigniter4/framework + repository: mgatner/framework token: ${{ secrets.ACCESS_TOKEN }} path: framework @@ -37,23 +25,29 @@ jobs: run: chmod +x ./source/.github/scripts/deploy-framework - name: Deploy - run: ./source/.github/scripts/deploy-framework ${GITHUB_WORKSPACE}/source ${GITHUB_WORKSPACE}/framework ${GITHUB_REF##*/} "${{ steps.message.outputs.result }}" - - appstarter: - runs-on: ubuntu-latest + run: ./source/.github/scripts/deploy-framework ${GITHUB_WORKSPACE}/source ${GITHUB_WORKSPACE}/framework ${GITHUB_REF##*/} - steps: - - name: Release message - id: message + - name: Release uses: actions/github-script@0.8.0 with: - result-encoding: string + github-token: ${{secrets.ACCESS_TOKEN}} script: | - console.log(github.repos.getLatestRelease({ + const release = await github.repos.getLatestRelease({ owner: context.repo.owner, repo: context.repo.repo }) + github.repos.createRelease({ + owner: context.repo.owner, + repo: 'framework', + tag_name: release.data.tag_name, + name: release.data.name, + body: release.data.body + }) + + appstarter: + runs-on: ubuntu-latest + steps: - name: Checkout source uses: actions/checkout@v2 with: @@ -62,7 +56,7 @@ jobs: - name: Checkout target uses: actions/checkout@v2 with: - repository: codeigniter4/appstarter + repository: mgatner/appstarter token: ${{ secrets.ACCESS_TOKEN }} path: appstarter @@ -71,3 +65,20 @@ jobs: - name: Merge run: ./source/.github/scripts/deploy-appstarter ${GITHUB_WORKSPACE}/source ${GITHUB_WORKSPACE}/appstarter ${GITHUB_REF##*/} + + - name: Release + uses: actions/github-script@0.8.0 + with: + github-token: ${{secrets.ACCESS_TOKEN}} + script: | + const release = await github.repos.getLatestRelease({ + owner: context.repo.owner, + repo: context.repo.repo + }) + github.repos.createRelease({ + owner: context.repo.owner, + repo: 'framework', + tag_name: release.data.tag_name, + name: release.data.name, + body: release.data.body + }) From 6b31eb24092f58cbc4724050e38952524acf4101 Mon Sep 17 00:00:00 2001 From: MGatner Date: Fri, 6 Mar 2020 21:27:46 -0500 Subject: [PATCH 05/11] Add commit identities, update appstarter in yaml --- .github/workflows/deploy.yml | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index c9301728fbc1..d2545dbd464f 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -9,6 +9,11 @@ jobs: runs-on: ubuntu-latest steps: + - name: Identify + run: | + git config --global user.email "action@github.com" + git config --global user.name "${GITHUB_ACTOR}" + - name: Checkout source uses: actions/checkout@v2 with: @@ -48,6 +53,11 @@ jobs: runs-on: ubuntu-latest steps: + - name: Identify + run: | + git config --global user.email "action@github.com" + git config --global user.name "${GITHUB_ACTOR}" + - name: Checkout source uses: actions/checkout@v2 with: @@ -63,7 +73,7 @@ jobs: - name: Chmod run: chmod +x ./source/.github/scripts/deploy-appstarter - - name: Merge + - name: Deploy run: ./source/.github/scripts/deploy-appstarter ${GITHUB_WORKSPACE}/source ${GITHUB_WORKSPACE}/appstarter ${GITHUB_REF##*/} - name: Release @@ -77,7 +87,7 @@ jobs: }) github.repos.createRelease({ owner: context.repo.owner, - repo: 'framework', + repo: 'appstarter', tag_name: release.data.tag_name, name: release.data.name, body: release.data.body From ed24a56d0a2a164f5ca32f4159af33b7c3932617 Mon Sep 17 00:00:00 2001 From: MGatner Date: Fri, 6 Mar 2020 21:28:56 -0500 Subject: [PATCH 06/11] Improve deploy scripts --- .github/scripts/deploy-appstarter | 56 +++++++++++++------------------ .github/scripts/deploy-framework | 16 +++------ 2 files changed, 29 insertions(+), 43 deletions(-) diff --git a/.github/scripts/deploy-appstarter b/.github/scripts/deploy-appstarter index cd8d4e890e3f..eccc1fc46964 100644 --- a/.github/scripts/deploy-appstarter +++ b/.github/scripts/deploy-appstarter @@ -1,42 +1,34 @@ #!/bin/bash -## Build app starter distributable +## Deploy codeigniter4/appstarter # Setup variables -. admin/release-config -TARGET=dist/appstarter -cd $TARGET -git checkout $branch - -#--------------------------------------------------- -echo -e "${BOLD}Build the framework distributable${NORMAL}" - -echo -e "${BOLD}Copy the main files/folders...${NORMAL}" -releasable='app public writable README.md contributing.md env license.txt spark .gitignore' -for fff in $releasable ; do - if [ -d "$fff" ] ; then - rm -rf $fff - fi - cp -rf ${CI_DIR}/$fff . -done +SOURCE=$1 +TARGET=$2 +RELEASE=$3 -rm -rf tests -mkdir tests -cp -rf ${CI_DIR}/tests/_support tests/ +echo "Preparing for version $3" +echo "Merging files from $1 to $2" -echo -e "${BOLD}Override as needed...${NORMAL}" -cp -rf ${CI_DIR}/admin/starter/* . +# Prepare the source +cd $SOURCE +git checkout master -#--------------------------------------------------- -# And finally, get ready for merging -echo -e "${BOLD}Assemble the pieces...${NORMAL}" -git add . -git commit -S -m "Release ${RELEASE}" +# Prepare the target +cd $TARGET git checkout master -git merge $branch +rm -rf * -cd $CI_DIR +# Copy common files +releasable='app public writable env license.txt spark .gitignore' +for fff in $releasable ; do + cp -Rf ${SOURCE}/$fff ./ +done -#--------------------------------------------------- -# Done for now -echo -e "${BOLD}Distributable app starter ready..${NORMAL}" +# Copy repo-specific files +cp -Rf ${SOURCE}/admin/starter/. ./ + +# Commit the changes +git add . +git commit -m "Release ${RELEASE}" +git push diff --git a/.github/scripts/deploy-framework b/.github/scripts/deploy-framework index 3ff694be7b08..89aaeecfaa81 100644 --- a/.github/scripts/deploy-framework +++ b/.github/scripts/deploy-framework @@ -17,24 +17,18 @@ git checkout master # Prepare the target cd $TARGET git checkout master +rm -rf * # Copy common files -releasable='app public system writable contributing env license.txt spark .gitignore' +releasable='app public writable env license.txt spark .gitignore system' for fff in $releasable ; do - if [ -d "$fff" ] ; then - rm -rf $fff - fi cp -Rf ${SOURCE}/$fff ./ done -# Copy framework-specific files -cp -Rf ${SOURCE}/admin/framework/* ./ - -# Self identify -git config --global user.email "releasebot@codeigniter.com" -git config --global user.name "CodeIgniter Release Bot" +# Copy repo-specific files +cp -Rf ${SOURCE}/admin/framework/. ./ # Commit the changes git add . -git commit -S -m "Release ${RELEASE}" +git commit -m "Release ${RELEASE}" git push From 0d98a64044784d3f18993c9d9aba5ff5e459e283 Mon Sep 17 00:00:00 2001 From: MGatner Date: Fri, 6 Mar 2020 21:39:06 -0500 Subject: [PATCH 07/11] Restore non-test organization --- .github/workflows/deploy.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index d2545dbd464f..b7bc1892ea37 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -22,7 +22,7 @@ jobs: - name: Checkout target uses: actions/checkout@v2 with: - repository: mgatner/framework + repository: codeigniter4/framework token: ${{ secrets.ACCESS_TOKEN }} path: framework @@ -66,7 +66,7 @@ jobs: - name: Checkout target uses: actions/checkout@v2 with: - repository: mgatner/appstarter + repository: codeigniter4/appstarter token: ${{ secrets.ACCESS_TOKEN }} path: appstarter From 3a080e24f83a7172b5530f67103d9829a80bef78 Mon Sep 17 00:00:00 2001 From: MGatner Date: Fri, 6 Mar 2020 21:51:54 -0500 Subject: [PATCH 08/11] Update builds script for stable --- admin/starter/builds | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin/starter/builds b/admin/starter/builds index 4e962ece8f2b..bbc5eca37df0 100755 --- a/admin/starter/builds +++ b/admin/starter/builds @@ -1,7 +1,7 @@ #!/usr/bin/env php Date: Fri, 6 Mar 2020 21:55:50 -0500 Subject: [PATCH 09/11] Remove legacy release scripts --- admin/release | 4 ---- admin/release-appstarter | 42 ---------------------------------------- admin/release-deploy | 8 -------- admin/release-framework | 42 ---------------------------------------- 4 files changed, 96 deletions(-) delete mode 100644 admin/release-appstarter delete mode 100644 admin/release-framework diff --git a/admin/release b/admin/release index ea923ff3ea9f..d14167f0502e 100755 --- a/admin/release +++ b/admin/release @@ -89,9 +89,7 @@ if [ -d dist ]; then fi mkdir dist -setup_repo framework setup_repo userguide -setup_repo appstarter #--------------------------------------------------- # Housekeeping - make sure writable is flushed of test files @@ -139,9 +137,7 @@ git commit -S -m "Release ${RELEASE}" #--------------------------------------------------- # Build the distributables -. admin/release-framework . admin/release-userguide -. admin/release-appstarter #--------------------------------------------------- # Done for now diff --git a/admin/release-appstarter b/admin/release-appstarter deleted file mode 100644 index cd8d4e890e3f..000000000000 --- a/admin/release-appstarter +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -## Build app starter distributable - -# Setup variables -. admin/release-config -TARGET=dist/appstarter -cd $TARGET -git checkout $branch - -#--------------------------------------------------- -echo -e "${BOLD}Build the framework distributable${NORMAL}" - -echo -e "${BOLD}Copy the main files/folders...${NORMAL}" -releasable='app public writable README.md contributing.md env license.txt spark .gitignore' -for fff in $releasable ; do - if [ -d "$fff" ] ; then - rm -rf $fff - fi - cp -rf ${CI_DIR}/$fff . -done - -rm -rf tests -mkdir tests -cp -rf ${CI_DIR}/tests/_support tests/ - -echo -e "${BOLD}Override as needed...${NORMAL}" -cp -rf ${CI_DIR}/admin/starter/* . - -#--------------------------------------------------- -# And finally, get ready for merging -echo -e "${BOLD}Assemble the pieces...${NORMAL}" -git add . -git commit -S -m "Release ${RELEASE}" -git checkout master -git merge $branch - -cd $CI_DIR - -#--------------------------------------------------- -# Done for now -echo -e "${BOLD}Distributable app starter ready..${NORMAL}" diff --git a/admin/release-deploy b/admin/release-deploy index d7bb66f7c07a..fe70284024fc 100755 --- a/admin/release-deploy +++ b/admin/release-deploy @@ -23,14 +23,6 @@ echo -e "${BOLD}Pushing to the user guide repository${NORMAL}" cd ${CI_DIR}/dist/userguide git push origin master -echo -e "${BOLD}Pushing to the framework repository${NORMAL}" -cd ${CI_DIR}/dist/framework -git push origin master - -echo -e "${BOLD}Pushing to the app starter repository${NORMAL}" -cd ${CI_DIR}/dist/appstarter -git push origin master - cd ${CI_DIR} #--------------------------------------------------- diff --git a/admin/release-framework b/admin/release-framework deleted file mode 100644 index 593b6582bdb7..000000000000 --- a/admin/release-framework +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -## Build framework distributable - -# Setup variables -. admin/release-config -TARGET=dist/framework -cd $TARGET -git checkout $branch - -#--------------------------------------------------- -echo -e "${BOLD}Build the framework distributable${NORMAL}" - -echo -e "${BOLD}Copy the main files/folders...${NORMAL}" -releasable='app docs public system writable contributing.md env license.txt spark .gitignore' -for fff in $releasable ; do - if [ -d "$fff" ] ; then - rm -rf $fff - fi - cp -rf ${CI_DIR}/$fff . -done - -echo -e "${BOLD}Override as needed...${NORMAL}" -cprm -rf tests -mkdir tests -cp -rf ${CI_DIR}/tests/_support tests/ - -cp -rf ${CI_DIR}/admin/framework/* . - -#--------------------------------------------------- -# And finally, get ready for merging -echo -e "${BOLD}Assemble the pieces...${NORMAL}" -git add . -git commit -S -m "Release ${RELEASE}" -git checkout master -git merge $branch - -cd $CI_DIR - -#--------------------------------------------------- -# Done for now -echo -e "${BOLD}Distributable framework ready..${NORMAL}" From 489e6243692622cf5ed180c53b566c3ca7722b27 Mon Sep 17 00:00:00 2001 From: MGatner Date: Fri, 6 Mar 2020 22:10:53 -0500 Subject: [PATCH 10/11] Update release docs --- admin/README.md | 8 ++------ admin/workflow.md | 16 ++++++++++++++-- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/admin/README.md b/admin/README.md index dcb1b9ef0e31..5d9ab2d6d106 100644 --- a/admin/README.md +++ b/admin/README.md @@ -16,7 +16,7 @@ This folder contains tools or docs useful for project maintainers. It is meant to be downloaded by developers, or composer-installed. This is a read-only repository. - **appstarter** is the released application starter repository. - It is derived from the framework's `application` and `public` folders, with + It is derived from the framework's `app` and `public` folders, with a composer requirement dependency to pull in the framework itself. It is meant to be downloaded or composer-installed. This is a read-only repository. @@ -64,14 +64,10 @@ scripts used by the release manager: in it, and it will run the related scripts following, to revise the release distributions. Usage: `admin/release version qualifier` -- **release-framework** builds the distributable framework repo. - It could be used on its own, but is normally part of `release`. -- **release-appstarter** builds the distributable appstarter repo. - It could be used on its own, but is normally part of `release`. - **release-userguide** builds the distributable userguide repo. It could be used on its own, but is normally part of `release`. - **release-deploy** pushes the release changes to the appropriate github - repositories. Tag & create releases on github. This is not easily reversible! + repositories. Tag & create releases on GitHub. This is not easily reversible! Usage: `admin/release-deploy version qualifier` - **release-revert** can be used to restore your repositories to the state they were in before you started a release. **IF** you haven't deployed. diff --git a/admin/workflow.md b/admin/workflow.md index 825a9c5d67f6..85e38e018ec2 100644 --- a/admin/workflow.md +++ b/admin/workflow.md @@ -12,12 +12,12 @@ release prep (`admin/release `)... - move or ignore stuff, distinguishing release from development - test that all is as it should be - merge the release branch into "master" & "develop" -- prepare the distribution repos After these have been vetted ... - push the release(s) to github (`admin/release-deploy `) -- **manually** create the releases & tag them on github, based on master +- **manually** create the release & tag it on GitHub, based on master Include any supplementary binaries as part of releases. +- Confirm the GitHub release action successfully deploys `appstarter` and `framework` - **manually** post a sticky announcement thread on the forum - **manually** tweet the release announcement @@ -37,6 +37,18 @@ This script is not intended to deal with hotfixes, i.e. PRs against `master` that need to also be merged into `develop`, probably as part of a bug fix minor release. +## GitHub Action + +There is an action defined to run on any release publish event: +**.github/workflows/deploy.yml**. This will cascade any release made from +the main repo to the distribution repos, `appstarter` and `framework`. In order +for the action to authenticate you must create a Personal Access Token and add it +as a repo secret `ACCESS_TOKEN`. It is recommended that the PAT be to a secure bot +account with organization access that is dedicated for this purpose. + +If for some reason a release needs to be made that should not cascade the easiest +solution is to disable repo actions temporarily. + ## Usage Inside a shell prompt, in the project root: From 52a7b0676fae4df35c7c9c28f47401aacb61b9a6 Mon Sep 17 00:00:00 2001 From: MGatner Date: Fri, 6 Mar 2020 22:11:29 -0500 Subject: [PATCH 11/11] Remove extraneous file --- admin/starter/.gitignore | 127 --------------------------------------- 1 file changed, 127 deletions(-) delete mode 100644 admin/starter/.gitignore diff --git a/admin/starter/.gitignore b/admin/starter/.gitignore deleted file mode 100644 index 6d0b5df9cae4..000000000000 --- a/admin/starter/.gitignore +++ /dev/null @@ -1,127 +0,0 @@ -#------------------------- -# Operating Specific Junk Files -#------------------------- - -# OS X -.DS_Store -.AppleDouble -.LSOverride - -# OS X Thumbnails -._* - -# Windows image file caches -Thumbs.db -ehthumbs.db -Desktop.ini - -# Recycle Bin used on file shares -$RECYCLE.BIN/ - -# Windows Installer files -*.cab -*.msi -*.msm -*.msp - -# Windows shortcuts -*.lnk - -# Linux -*~ - -# KDE directory preferences -.directory - -# Linux trash folder which might appear on any partition or disk -.Trash-* - -#------------------------- -# Environment Files -#------------------------- -# These should never be under version control, -# as it poses a security risk. -.env -.vagrant -Vagrantfile - -#------------------------- -# Temporary Files -#------------------------- -writable/cache/* -!writable/cache/index.html - -writable/logs/* -!writable/logs/index.html - -writable/session/* -!writable/session/index.html - -writable/uploads/* -!writable/uploads/index.html - -writable/debugbar/* - -php_errors.log - -#------------------------- -# User Guide Temp Files -#------------------------- -user_guide_src/build/* -user_guide_src/cilexer/build/* -user_guide_src/cilexer/dist/* -user_guide_src/cilexer/pycilexer.egg-info/* - -#------------------------- -# Test Files -#------------------------- -tests/coverage* - -# Don't save phpunit under version control. -phpunit - -#------------------------- -# Composer -#------------------------- -vendor/ -composer.lock - -#------------------------- -# IDE / Development Files -#------------------------- - -# Modules Testing -_modules/* - -# phpenv local config -.php-version - -# Jetbrains editors (PHPStorm, etc) -.idea/ -*.iml - -# Netbeans -nbproject/ -build/ -nbbuild/ -dist/ -nbdist/ -nbactions.xml -nb-configuration.xml -.nb-gradle/ - -# Sublime Text -*.tmlanguage.cache -*.tmPreferences.cache -*.stTheme.cache -*.sublime-workspace -*.sublime-project -.phpintel -/api/ - -# Visual Studio Code -.vscode/ - -/results/ -/phpunit*.xml -/.phpunit.*.cache \ No newline at end of file