-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
d05e7f8
commit 6c3aca8
Showing
4 changed files
with
162 additions
and
0 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,19 @@ | ||
name: delete_development | ||
on: | ||
workflow_dispatch: | ||
env: | ||
COMPONENT_NAME: 'ilw-content' # set this to the web component name you are using | ||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Configure AWS Credentials | ||
uses: aws-actions/configure-aws-credentials@v1 | ||
with: | ||
aws-access-key-id: ${{ vars.TOOLKIT_AWS_ACCESS_KEY }} | ||
aws-secret-access-key: ${{ secrets.TOOLKIT_AWS_ACCESS_SECRET }} | ||
aws-region: us-east-2 | ||
- name: Delete S3 bucket | ||
run: aws s3 rm s3://dev.toolkit.illinois.edu/content/$COMPONENT_NAME --recursive | ||
- name: Invalidate Cloudfront cache | ||
run: aws cloudfront create-invalidation --distribution-id ${{ vars.TOOLKIT_AWS_CLOUDFRONT_DEV }} --paths "/$COMPONENT_NAME*" |
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: deploy_development | ||
on: | ||
workflow_dispatch: | ||
inputs: | ||
version: | ||
description: 'Version number' | ||
required: true | ||
default: '' | ||
type: string | ||
env: | ||
MAJORVERSION: '' | ||
COMPONENT_NAME: 'ilw-content' # set this to the web component name you are using | ||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: 'Checkout GitHub Action' | ||
uses: actions/checkout@v4 | ||
- name: Get version from input | ||
run: echo "VERSION=${GITHUB_BRANCH}" >> $GITHUB_ENV | ||
env: | ||
GITHUB_BRANCH: ${{ github.event.inputs.version }} | ||
- name: Display version install | ||
run: echo "Installing dev version ${VERSION}" | ||
|
||
- run: npm install | ||
- run: npm rebuild | ||
- run: npm run-script build | ||
- name: Configure AWS Credentials | ||
uses: aws-actions/configure-aws-credentials@v1 | ||
with: | ||
aws-access-key-id: ${{ vars.TOOLKIT_AWS_ACCESS_KEY }} | ||
aws-secret-access-key: ${{ secrets.TOOLKIT_AWS_ACCESS_SECRET }} | ||
aws-region: us-east-2 | ||
- name: Deploy toolbox to S3 bucket | ||
run: aws s3 sync ./dist/ s3://dev.toolkit.illinois.edu/content/$COMPONENT_NAME/$VERSION --delete --acl bucket-owner-full-control | ||
- name: Invalidate Cloudfront cache | ||
run: aws cloudfront create-invalidation --distribution-id ${{ vars.TOOLKIT_AWS_CLOUDFRONT_DEV }} --paths "/$COMPONENT_NAME/$VERSION*" |
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,64 @@ | ||
name: deploy_production | ||
on: | ||
push: | ||
tags: [ '**' ] | ||
env: | ||
MAJORVERSION: '' | ||
MINORVERSION: '' | ||
FULLVERSION: '' | ||
COMPONENT_NAME: 'ilw-content' # set this to the web component name you are using | ||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: 'Checkout GitHub Action' | ||
uses: actions/checkout@v4 | ||
- name: 'Get Version' | ||
id: get_version | ||
uses: battila7/get-version-action@v2 | ||
|
||
- name: 'Check for correct naming convention' | ||
if: ${{ !steps.get_version.outputs.is-semver }} | ||
run: exit 1 | ||
- name: 'Get major version from tag' | ||
run: echo "MAJORVERSION=${GITHUB_BRANCH}" >> $GITHUB_ENV | ||
env: | ||
GITHUB_BRANCH: ${{ steps.get_version.outputs.major }} | ||
- name: 'Get minor version from tag' | ||
run: echo "MINORVERSION=${GITHUB_BRANCH}.${GITHUB_BRANCH_MINOR}" >> $GITHUB_ENV | ||
env: | ||
GITHUB_BRANCH: ${{ steps.get_version.outputs.major }} | ||
GITHUB_BRANCH_MINOR: ${{ steps.get_version.outputs.minor }} | ||
- name: Get patch (full) version from tag | ||
run: echo "FULLVERSION=${GITHUB_BRANCH}" >> $GITHUB_ENV | ||
env: | ||
GITHUB_BRANCH: ${{ steps.get_version.outputs.version-without-v }} | ||
- name: Display major version install | ||
run: echo "Installing major version ${MAJORVERSION}" | ||
- name: Display minor version install | ||
run: echo "Installing minor version ${MINORVERSION}" | ||
- name: Display patch (full) version install | ||
run: echo "Installing patch (full) version ${FULLVERSION}" | ||
|
||
- run: npm install | ||
- run: npm rebuild | ||
- run: npm run-script build | ||
- name: Configure AWS Credentials | ||
uses: aws-actions/configure-aws-credentials@v1 | ||
with: | ||
aws-access-key-id: ${{ vars.TOOLKIT_AWS_ACCESS_KEY }} | ||
aws-secret-access-key: ${{ secrets.TOOLKIT_AWS_ACCESS_SECRET }} | ||
aws-region: us-east-2 | ||
|
||
- name: Deploy toolbox to S3 bucket for major version | ||
run: aws s3 sync ./dist/ s3://cdn.toolkit.illinois.edu/content/$COMPONENT_NAME/$MAJORVERSION --delete --acl bucket-owner-full-control | ||
- name: Invalidate Cloudfront cache for major version | ||
run: aws cloudfront create-invalidation --distribution-id ${{ vars.TOOLKIT_AWS_CLOUDFRONT }} --paths "/$COMPONENT_NAME/$MAJORVERSION*" | ||
- name: Deploy toolbox to S3 bucket for minor version | ||
run: aws s3 sync ./dist/ s3://cdn.toolkit.illinois.edu/content/$COMPONENT_NAME/$MINORVERSION --delete --acl bucket-owner-full-control | ||
- name: Invalidate Cloudfront cache for minor version | ||
run: aws cloudfront create-invalidation --distribution-id ${{ vars.TOOLKIT_AWS_CLOUDFRONT }} --paths "/$COMPONENT_NAME/$MINORVERSION*" | ||
- name: Deploy toolbox to S3 bucket for patch (full) version | ||
run: aws s3 sync ./dist/ s3://cdn.toolkit.illinois.edu/content/$COMPONENT_NAME/$FULLVERSION --delete --acl bucket-owner-full-control | ||
- name: Invalidate Cloudfront cache for patch (full) version | ||
run: aws cloudfront create-invalidation --distribution-id ${{ vars.TOOLKIT_AWS_CLOUDFRONT }} --paths "/$COMPONENT_NAME/$FULLVERSION*" |
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,41 @@ | ||
name: deploy_production_manual | ||
on: | ||
workflow_dispatch: | ||
inputs: | ||
version: | ||
description: 'Version number' | ||
required: true | ||
default: '' | ||
type: string | ||
env: | ||
MAJORVERSION: '' | ||
MINORVERSION: '' | ||
FULLVERSION: '' | ||
COMPONENT_NAME: 'ilw-content' # set this to the web component name you are using | ||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: 'Checkout GitHub Action' | ||
uses: actions/checkout@v4 | ||
- name: Get version from input | ||
run: echo "VERSION=${GITHUB_BRANCH}" >> $GITHUB_ENV | ||
env: | ||
GITHUB_BRANCH: ${{ github.event.inputs.version }} | ||
- name: Display version install | ||
run: echo "Installing dev version ${VERSION}" | ||
|
||
- run: npm install | ||
- run: npm rebuild | ||
- run: npm run-script build | ||
- name: Configure AWS Credentials | ||
uses: aws-actions/configure-aws-credentials@v1 | ||
with: | ||
aws-access-key-id: ${{ vars.TOOLKIT_AWS_ACCESS_KEY }} | ||
aws-secret-access-key: ${{ secrets.TOOLKIT_AWS_ACCESS_SECRET }} | ||
aws-region: us-east-2 | ||
|
||
- name: Deploy toolbox to S3 bucket for version | ||
run: aws s3 sync ./dist/ s3://cdn.toolkit.illinois.edu/content/$COMPONENT_NAME/$VERSION --delete --acl bucket-owner-full-control | ||
- name: Invalidate Cloudfront cache for version | ||
run: aws cloudfront create-invalidation --distribution-id ${{ vars.TOOLKIT_AWS_CLOUDFRONT }} --paths "/$COMPONENT_NAME/$VERSION*" |