-
Notifications
You must be signed in to change notification settings - Fork 150
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Browse the repository at this point in the history
* [ACA-4653] Run ACA upstream on schedule * [ACA-4653] Migrate release workflow to GHA * [ACA-4653] Consistency in naming * [ACA-4653] Use GH action to configure GH author * [ACA-4653] Dedicated sh for publish Docker image job * [ACA-4653] Add missing variables * [ACA-4653] Delete Travis.yml * [ACA-4653] CR fixes * [ACA-4653] Add branch name as action input * [ACA-4653] Proper env var usage in workflow
- Loading branch information
1 parent
3294606
commit e38e72a
Showing
10 changed files
with
394 additions
and
129 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 |
---|---|---|
|
@@ -15,29 +15,17 @@ runs: | |
using: "composite" | ||
steps: | ||
- uses: Alfresco/alfresco-build-tools/.github/actions/[email protected] | ||
- name: setup variables | ||
shell: bash | ||
run: | | ||
echo "BUILD_OPTS=--configuration=production,e2e" >> $GITHUB_ENV | ||
echo "TEST_OPTS=" >> $GITHUB_ENV | ||
echo "E2E_PROTRACTOR_OPTS=" >> $GITHUB_ENV | ||
echo "E2E_TSCONFIG=tsconfig.e2e.json" >> $GITHUB_ENV | ||
echo "GIT_HASH=$(git rev-parse HEAD)" >> $GITHUB_ENV | ||
echo "SMART_RUNNER_DIRECTORY=.protractor-smartrunner" >> $GITHUB_ENV | ||
echo "BASE_HASH=.protractor-smartrunner" >> $GITHUB_ENV | ||
echo "HEAD_HASH=HEAD" >> $GITHUB_ENV | ||
- uses: ./.github/actions/setup | ||
- name: setup S3 caching | ||
shell: bash | ||
run: | | ||
S3_DBP_PATH="s3://alfresco-travis-builds/aca" | ||
if [ "${{ github.event_name }}" == "push" ]; then | ||
BRANCH_NAME=${GITHUB_REF##*/} | ||
S3_DBP_ROOT_FOLDER="$S3_DBP_PATH/$BRANCH_NAME" | ||
elif [ "${{ github.event_name }}" == "pull_request" ]; then | ||
BRANCH_NAME=${GITHUB_BASE_REF} | ||
S3_DBP_ROOT_FOLDER="$S3_DBP_PATH/$BRANCH_NAME" | ||
echo "BASE_HASH=origin/$BRANCH_NAME" >> $GITHUB_ENV | ||
elif [ "${TRAVIS_EVENT_TYPE}" == "schedule" ]; then | ||
elif [ "${{ github.event_name }}" == "schedule" ]; then | ||
S3_DBP_ROOT_FOLDER="$S3_DBP_PATH/cron" | ||
else | ||
S3_DBP_ROOT_FOLDER="$S3_DBP_PATH/api" | ||
|
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,35 @@ | ||
name: "Publish GitHub Tag" | ||
description: "Publish GitHub Tag" | ||
|
||
inputs: | ||
github_token: | ||
description: 'Github token' | ||
required: true | ||
type: string | ||
branch_name: | ||
description: 'Name of the branch the workflow runs on' | ||
required: true | ||
type: string | ||
dry-run: | ||
description: dry run flag | ||
required: true | ||
type: boolean | ||
|
||
runs: | ||
using: "composite" | ||
steps: | ||
- name: publish tag | ||
shell: bash | ||
run: | | ||
if [[ ${{ inputs.branch_name }} == "master" ]]; then | ||
VERSION=$(grep -m1 version package.json | awk '{ print $2 }' | sed 's/[", ]//g') | ||
fi; | ||
echo "git tag -a ${VERSION} -m ${VERSION}" | ||
if [[ ${{ inputs.dry-run }} == false ]]; then | ||
git tag -a ${VERSION} -m "${VERSION} [ci skip] " | ||
git remote rm origin | ||
GITHUB_REPO=https://${{ inputs.github_token }}:[email protected]/Alfresco/alfresco-content-app.git | ||
git remote add origin $GITHUB_REPO | ||
git push origin --tags | ||
fi; |
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,36 @@ | ||
name: "Publish Docker Images" | ||
description: "Publish Docker image to quay.io or dockerhub or another domain - only publish the version on master - elsewhere version and branch" | ||
|
||
inputs: | ||
domain: | ||
description: 'domain to publish image to' | ||
required: true | ||
type: string | ||
username: | ||
description: 'login username' | ||
required: true | ||
type: string | ||
password: | ||
description: 'login password' | ||
required: true | ||
type: string | ||
dry-run: | ||
description: dry run flag | ||
required: true | ||
type: boolean | ||
|
||
runs: | ||
using: "composite" | ||
steps: | ||
- name: Get docker image tag name | ||
shell: bash | ||
run: | | ||
if [[ $BRANCH_NAME == "master" ]]; then | ||
TAG_VERSION=$(grep -m1 version package.json | awk '{ print $2 }' | sed 's/[", ]//g') | ||
else | ||
TAG_VERSION=$BRANCH_NAME-${{ github.run_id }} | ||
fi | ||
echo "TAG_VERSION=$TAG_VERSION" >> $GITHUB_ENV | ||
- name: Publish image | ||
shell: bash | ||
run: ./scripts/travis/deploy/publish.sh ${{ inputs.domain }} ${{ inputs.username }} ${{ inputs.password }} $TAG_VERSION $BRANCH_NAME ${{ inputs.dry-run }} |
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,112 @@ | ||
name: "Publish ACA libs to NPM and GH registry" | ||
description: "Publish ACA libs to NPM and GH registry" | ||
|
||
inputs: | ||
github_token: | ||
description: 'Github token' | ||
required: true | ||
type: string | ||
npm-registry-address: | ||
description: 'NPM registry address' | ||
required: true | ||
type: string | ||
npm-registry-token: | ||
description: 'NPM registry token' | ||
required: true | ||
type: string | ||
dry-run: | ||
description: dry run flag | ||
required: true | ||
type: boolean | ||
|
||
runs: | ||
using: "composite" | ||
steps: | ||
- name: update libs version | ||
shell: bash | ||
run: | | ||
ROOT_DIR=./../../.. | ||
export DIST_DIR=./dist/@alfresco | ||
PROJECTS_DIR=./projects | ||
VERSION_IN_PACKAGE_JSON=$(node -p "require('$ROOT_DIR/package.json').version;") | ||
if [[ $TRAVIS_BRANCH =~ ^master.*?$ ]] ; then | ||
NEW_LIBRARY_VERSION=VERSION_IN_PACKAGE_JSON | ||
else | ||
NEW_LIBRARY_VERSION="${VERSION_IN_PACKAGE_JSON}-${{ github.run_id }}" | ||
fi | ||
echo -e "Branch is '$BRANCH_NAME', therefore publish with '$TAG_NPM' tag\n" | ||
export PROJECTS=( | ||
'aca-shared' | ||
'aca-folder-rules' | ||
'adf-office-services-ext' | ||
'aca-about' | ||
'aca-preview' | ||
'aca-viewer' | ||
'aca-content' | ||
); | ||
for PROJECT in "${PROJECTS[@]}"; do | ||
echo "Update ${PROJECT} version to ${NEW_LIBRARY_VERSION}" | ||
cd $PROJECTS_DIR/${PROJECT} | ||
if [[ ${{ inputs.dry-run }} == false ]]; then | ||
npm version ${NEW_LIBRARY_VERSION} | ||
fi | ||
done | ||
echo -e "\n\nBuild projects" | ||
cd ${ROOT_DIR} | ||
npm run build-libs | ||
- uses: actions/setup-node@v3 | ||
name: setup GH registry | ||
with: | ||
node-version-file: '.nvmrc' | ||
registry-url: 'https://npm.pkg.github.com' | ||
scope: '@alfresco' | ||
- name: publish tag to GH registry | ||
shell: bash | ||
run: | | ||
for PROJECT in "${PROJECTS[@]}" | ||
do | ||
cd $DIST_DIR/${PROJECT} | ||
if [[ ${{ inputs.dry-run }} == false ]]; then | ||
echo -e "Publish with dry mode for project to GH registry: $PROJECT\n" | ||
echo -e "npm publish --dry-run --tag $TAG_NPM \n" | ||
npm publish --dry-run --tag $TAG_NPM | ||
else | ||
echo -e "======== Publishing project to GH registry: $PROJECT ========\n" | ||
echo -e "npm publish --tag $TAG_NPM\n" | ||
npm publish --tag $TAG_NPM | ||
fi | ||
done | ||
env: | ||
NODE_AUTH_TOKEN: ${{ inputs.github_token }} | ||
- uses: actions/setup-node@v3 | ||
name: setup NPM registry | ||
with: | ||
node-version-file: '.nvmrc' | ||
registry-url: ${{ inputs.npm-registry-address }} | ||
scope: '@alfresco' | ||
- name: publish tag to NPM registry | ||
shell: bash | ||
run: | | ||
for PROJECT in "${PROJECTS[@]}" | ||
do | ||
cd $DIST_DIR/${PROJECT} | ||
if [[ ${{ inputs.dry-run }} == false ]]; then | ||
echo -e "Publish with dry mode for project to NPM registry: $PROJECT\n" | ||
echo -e "npm publish --dry-run --tag $TAG_NPM \n" | ||
npm publish --dry-run --tag $TAG_NPM | ||
else | ||
echo -e "======== Publishing project to NPM registry: $PROJECT ========\n" | ||
echo -e "npm publish --tag $TAG_NPM\n" | ||
npm publish --tag $TAG_NPM | ||
fi | ||
done | ||
env: | ||
NODE_AUTH_TOKEN: ${{ inputs.npm-registry-token }} |
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,38 @@ | ||
name: "Variables setup" | ||
description: "Variables setup" | ||
|
||
runs: | ||
using: "composite" | ||
steps: | ||
- uses: Alfresco/alfresco-build-tools/.github/actions/[email protected] | ||
- name: setup variables | ||
shell: bash | ||
run: | | ||
echo "BUILD_OPTS=--configuration=production,e2e" >> $GITHUB_ENV | ||
echo "TEST_OPTS=" >> $GITHUB_ENV | ||
echo "E2E_PROTRACTOR_OPTS=" >> $GITHUB_ENV | ||
echo "E2E_TSCONFIG=tsconfig.e2e.json" >> $GITHUB_ENV | ||
echo "GIT_HASH=$(git rev-parse HEAD)" >> $GITHUB_ENV | ||
echo "SMART_RUNNER_DIRECTORY=.protractor-smartrunner" >> $GITHUB_ENV | ||
echo "BASE_HASH=.protractor-smartrunner" >> $GITHUB_ENV | ||
echo "HEAD_HASH=HEAD" >> $GITHUB_ENV | ||
- uses: Alfresco/alfresco-build-tools/.github/actions/[email protected] | ||
- name: set TAG_NPM | ||
shell: bash | ||
run: | | ||
VERSION_IN_PACKAGE_JSON=$(node -p "require('./package.json')".version) | ||
echo "version in package.json=${VERSION_IN_PACKAGE_JSON}" | ||
if [[ $BRANCH_NAME =~ ^master(-patch.*)?$ ]]; then | ||
# Pre-release versions | ||
if [[ $VERSION_IN_PACKAGE_JSON =~ ^[0-9]*\.[0-9]*\.[0-9]*-A\.[0-9]*$ ]]; | ||
then | ||
TAG_NPM=next | ||
# Stable major versions | ||
else | ||
TAG_NPM=latest | ||
fi | ||
fi | ||
if [[ $BRANCH_NAME =~ ^develop(-patch.*)?$ ]]; then | ||
TAG_NPM=alpha | ||
fi | ||
echo "TAG_NPM=${TAG_NPM}" >> $GITHUB_ENV |
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 |
---|---|---|
@@ -1,6 +1,8 @@ | ||
name: "ACA upstream" | ||
|
||
on: | ||
schedule: | ||
- cron: "0 12 * * *" | ||
workflow_call: | ||
workflow_dispatch: | ||
inputs: | ||
|
@@ -32,8 +34,13 @@ jobs: | |
with: | ||
node-version-file: '.nvmrc' | ||
cache: 'npm' | ||
- uses: Alfresco/alfresco-build-tools/.github/actions/[email protected] | ||
with: | ||
username: ${{ vars.BOT_GITHUB_USERNAME }} | ||
email: ${{ vars.BOT_GITHUB_EMAIL }} | ||
global: true | ||
- name: Trigger upstream | ||
shell: bash | ||
run: | | ||
npm install github-api | ||
./scripts/travis/update/update-project.sh -p $TRAVIS_BUILD_NUMBER -t $GH_TOKEN -v alpha -c $TRAVIS_COMMIT -r ${{ inputs.repo_to_update }} | ||
./scripts/travis/update/update-project.sh -p $TRAVIS_BUILD_NUMBER -t $GH_TOKEN -v alpha -c $TRAVIS_COMMIT -r ${{ inputs.repo_to_update || 'alfresco-applications' }} |
Oops, something went wrong.