From 5d4cb905e07292b93ab3a24ade5aa1afd17f4284 Mon Sep 17 00:00:00 2001 From: Bryan Jonker Date: Fri, 13 Sep 2024 15:02:11 -0500 Subject: [PATCH] prepping for beta --- .github/workflows/delete_development.yml | 2 +- .../{deploy_production.yml => deploy.yml} | 47 +++++++++++++++---- ...ment.yml => deploy_development_manual.yml} | 9 ++-- .../workflows/deploy_production_manual.yml | 7 +-- .github/workflows/publish_npm.yml | 6 +-- builder/ilw-page.json | 2 +- ...0.0-alpha2.json => ilw-page.1.0-beta.json} | 7 +-- package-lock.json | 5 +- package.json | 3 +- 9 files changed, 58 insertions(+), 30 deletions(-) rename .github/workflows/{deploy_production.yml => deploy.yml} (54%) rename .github/workflows/{deploy_development.yml => deploy_development_manual.yml} (86%) rename builder/versions/{ilw-page.1.0.0-alpha2.json => ilw-page.1.0-beta.json} (90%) diff --git a/.github/workflows/delete_development.yml b/.github/workflows/delete_development.yml index 9ebf9aa..637078b 100644 --- a/.github/workflows/delete_development.yml +++ b/.github/workflows/delete_development.yml @@ -2,7 +2,7 @@ name: delete_development on: workflow_dispatch: env: - COMPONENT_NAME: 'ilw-page' # set this to the web component name you are using + COMPONENT_NAME: ${{ github.event.repository.name }} jobs: build: runs-on: ubuntu-latest diff --git a/.github/workflows/deploy_production.yml b/.github/workflows/deploy.yml similarity index 54% rename from .github/workflows/deploy_production.yml rename to .github/workflows/deploy.yml index 7183c9c..87b368c 100644 --- a/.github/workflows/deploy_production.yml +++ b/.github/workflows/deploy.yml @@ -1,12 +1,13 @@ -name: deploy_production +name: deploy on: - push: - tags: [ '**' ] + release: + types: [published] env: MAJORVERSION: '' MINORVERSION: '' FULLVERSION: '' - COMPONENT_NAME: 'ilw-page' # set this to the web component name you are using + PRERELEASE: '' + COMPONENT_NAME: ${{ github.event.repository.name }} jobs: build: runs-on: ubuntu-latest @@ -15,7 +16,7 @@ jobs: uses: actions/checkout@v4 - name: 'Get Version' id: get_version - uses: battila7/get-version-action@v2 + uses: dhkatz/get-version-action@v3.0.0 - name: 'Check for correct naming convention' if: ${{ !steps.get_version.outputs.is-semver }} @@ -33,12 +34,22 @@ jobs: run: echo "FULLVERSION=${GITHUB_BRANCH}" >> $GITHUB_ENV env: GITHUB_BRANCH: ${{ steps.get_version.outputs.version-without-v }} + - name: Get prelease version from tag + run: echo "PRERELEASE=${GITHUB_BRANCH}" >> $GITHUB_ENV + env: + GITHUB_BRANCH: ${{ steps.get_version.outputs.prerelease }} - name: Display major version install - run: echo "Installing major version ${MAJORVERSION}" + run: echo "Installing major version ${MAJORVERSION} for ${COMPONENT_NAME}" - name: Display minor version install - run: echo "Installing minor version ${MINORVERSION}" + run: echo "Installing minor version ${MINORVERSION} for ${COMPONENT_NAME}" - name: Display patch (full) version install - run: echo "Installing patch (full) version ${FULLVERSION}" + run: echo "Installing patch (full) version ${FULLVERSION} for ${COMPONENT_NAME}" + - name: Production run + if: ${{ steps.get_version.outputs.prerelease == '' }} + run: echo "Running production deployment" + - name: Prerelease run + if: ${{ steps.get_version.outputs.prerelease != '' }} + run: echo "Running development deployment" - run: npm install - run: npm rebuild @@ -51,14 +62,32 @@ jobs: aws-region: us-east-2 - name: Deploy toolbox to S3 bucket for major version + if: ${{ steps.get_version.outputs.prerelease == '' }} 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 + if: ${{ steps.get_version.outputs.prerelease == '' }} run: aws cloudfront create-invalidation --distribution-id ${{ vars.TOOLKIT_AWS_CLOUDFRONT }} --paths "/$COMPONENT_NAME/$MAJORVERSION*" - name: Deploy toolbox to S3 bucket for minor version + if: ${{ steps.get_version.outputs.prerelease == '' }} 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 + if: ${{ steps.get_version.outputs.prerelease == '' }} 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 + if: ${{ steps.get_version.outputs.prerelease == '' }} 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*" \ No newline at end of file + if: ${{ steps.get_version.outputs.prerelease == '' }} + run: aws cloudfront create-invalidation --distribution-id ${{ vars.TOOLKIT_AWS_CLOUDFRONT }} --paths "/$COMPONENT_NAME/$FULLVERSION*" + - name: Deploy toolbox to S3 bucket for full version dev + if: ${{ steps.get_version.outputs.prerelease != '' }} + run: aws s3 sync ./dist/ s3://dev.toolkit.illinois.edu/content/$COMPONENT_NAME/$FULLVERSION --delete --acl bucket-owner-full-control + - name: Invalidate Cloudfront cache for full version dev + if: ${{ steps.get_version.outputs.prerelease != '' }} + run: aws cloudfront create-invalidation --distribution-id ${{ vars.TOOLKIT_AWS_CLOUDFRONT_DEV }} --paths "/$COMPONENT_NAME/$FULLVERSION*" + - name: Deploy toolbox to S3 bucket for latest dev + if: ${{ steps.get_version.outputs.prerelease != '' }} + run: aws s3 sync ./dist/ s3://dev.toolkit.illinois.edu/content/$COMPONENT_NAME/latest --delete --acl bucket-owner-full-control + - name: Invalidate Cloudfront cache for latest dev + if: ${{ steps.get_version.outputs.prerelease != '' }} + run: aws cloudfront create-invalidation --distribution-id ${{ vars.TOOLKIT_AWS_CLOUDFRONT_DEV }} --paths "/$COMPONENT_NAME/latest*" diff --git a/.github/workflows/deploy_development.yml b/.github/workflows/deploy_development_manual.yml similarity index 86% rename from .github/workflows/deploy_development.yml rename to .github/workflows/deploy_development_manual.yml index 53de29b..77e74ba 100644 --- a/.github/workflows/deploy_development.yml +++ b/.github/workflows/deploy_development_manual.yml @@ -1,4 +1,4 @@ -name: deploy_development +name: deploy_development_manual on: workflow_dispatch: inputs: @@ -8,8 +8,7 @@ on: default: '' type: string env: - MAJORVERSION: '' - COMPONENT_NAME: 'ilw-page' # set this to the web component name you are using + COMPONENT_NAME: ${{ github.event.repository.name }} jobs: build: runs-on: ubuntu-latest @@ -21,7 +20,7 @@ jobs: env: GITHUB_BRANCH: ${{ github.event.inputs.version }} - name: Display version install - run: echo "Installing dev version ${VERSION}" + run: echo "Installing dev version ${VERSION} for component ${COMPONENT_NAME}" - run: npm install - run: npm rebuild @@ -35,4 +34,4 @@ jobs: - 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*" \ No newline at end of file + run: aws cloudfront create-invalidation --distribution-id ${{ vars.TOOLKIT_AWS_CLOUDFRONT_DEV }} --paths "/$COMPONENT_NAME/$VERSION*" diff --git a/.github/workflows/deploy_production_manual.yml b/.github/workflows/deploy_production_manual.yml index abaabe2..d2eb320 100644 --- a/.github/workflows/deploy_production_manual.yml +++ b/.github/workflows/deploy_production_manual.yml @@ -8,10 +8,7 @@ on: default: '' type: string env: - MAJORVERSION: '' - MINORVERSION: '' - FULLVERSION: '' - COMPONENT_NAME: 'ilw-page' # set this to the web component name you are using + COMPONENT_NAME: ${{ github.event.repository.name }} jobs: build: runs-on: ubuntu-latest @@ -23,7 +20,7 @@ jobs: env: GITHUB_BRANCH: ${{ github.event.inputs.version }} - name: Display version install - run: echo "Installing dev version ${VERSION}" + run: echo "Installing production version ${VERSION} for component ${COMPONENT_NAME}" - run: npm install - run: npm rebuild diff --git a/.github/workflows/publish_npm.yml b/.github/workflows/publish_npm.yml index 37b416a..964f0d0 100644 --- a/.github/workflows/publish_npm.yml +++ b/.github/workflows/publish_npm.yml @@ -1,8 +1,8 @@ name: publish_npm on: workflow_dispatch: - push: - tags: [ '**' ] + release: + types: [published] jobs: build: runs-on: ubuntu-latest @@ -18,4 +18,4 @@ jobs: - name: Install to npm run: npm publish --access public env: - NODE_AUTH_TOKEN: ${{secrets.TOOLKIT_NPM_SECRET}} + NODE_AUTH_TOKEN: ${{secrets.TOOLKIT_NPM_SECRET}} \ No newline at end of file diff --git a/builder/ilw-page.json b/builder/ilw-page.json index fdcd641..42baf5c 100644 --- a/builder/ilw-page.json +++ b/builder/ilw-page.json @@ -7,5 +7,5 @@ "description": "The Page component, containing styles and margins for other components.", "toolkit-version": "", "production-version": "", - "development-version": "1.0.0-alpha2" + "development-version": "1.0-beta" } diff --git a/builder/versions/ilw-page.1.0.0-alpha2.json b/builder/versions/ilw-page.1.0-beta.json similarity index 90% rename from builder/versions/ilw-page.1.0.0-alpha2.json rename to builder/versions/ilw-page.1.0-beta.json index 98127ac..92f15a2 100644 --- a/builder/versions/ilw-page.1.0.0-alpha2.json +++ b/builder/versions/ilw-page.1.0-beta.json @@ -5,10 +5,11 @@ "type": "web component", "element-name": "ilw-page", "description": "The Page component, containing styles and margins for other components.", - "version": "1.0.0-alpha2", + "builder-version": "1.0-beta", + "version": "1.0.0-beta", "date": "7/3/2024", - "css": "https://dev.toolkit.illinois.edu/ilw-page/1.0.0-alpha2/ilw-page.css", - "js": "https://dev.toolkit.illinois.edu/ilw-page/1.0.0-alpha2/ilw-page.js", + "css": "https://dev.toolkit.illinois.edu/ilw-page/1.0.0-beta/ilw-page.css", + "js": "https://dev.toolkit.illinois.edu/ilw-page/1.0.0-beta/ilw-page.js", "production": false, "notes": "", "parent-style": "", diff --git a/package-lock.json b/package-lock.json index 59c6216..db033c9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,13 @@ { "name": "@illinois-toolkit/ilw-page", - "version": "1.0.0-alpha", + "version": "1.0.0-beta", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@illinois-toolkit/ilw-page", - "version": "1.0.0-alpha", + "version": "1.0.0-beta", + "license": "MIT", "dependencies": { "lit": "3.1.3" }, diff --git a/package.json b/package.json index 910a370..760f5c5 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,8 @@ "description": "Illinois Toolkit: This component is used to manage major areas inside an HTML page.", "repository": "github:web-illinois/ilw-page", "private": false, - "version": "1.0.0-alpha2", + "license": "MIT", + "version": "1.0.0-beta", "type": "module", "files": [ "src/**",