From 49fe9a33710a8db0f266902aae2a5481ac9b223b Mon Sep 17 00:00:00 2001 From: dhanifajar15 Date: Mon, 12 Aug 2024 21:03:54 +0700 Subject: [PATCH 1/3] added deployment to nexus npm repository --- .github/workflows/build_test_lint.yml | 112 -------------------------- .github/workflows/deploy-apps.yml | 13 +++ .github/workflows/deploy.yml | 39 +++++++++ .github/workflows/deploy_app.yml | 69 ---------------- .github/workflows/deploy_docs.yml | 37 --------- package.json | 5 ++ 6 files changed, 57 insertions(+), 218 deletions(-) delete mode 100644 .github/workflows/build_test_lint.yml create mode 100644 .github/workflows/deploy-apps.yml create mode 100644 .github/workflows/deploy.yml delete mode 100644 .github/workflows/deploy_app.yml delete mode 100644 .github/workflows/deploy_docs.yml diff --git a/.github/workflows/build_test_lint.yml b/.github/workflows/build_test_lint.yml deleted file mode 100644 index 953b4685..00000000 --- a/.github/workflows/build_test_lint.yml +++ /dev/null @@ -1,112 +0,0 @@ -name: Smart Forms Build-Test-Lint Workflow - -on: - push: - -jobs: - build: - name: Build - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Use Node.js 16.x - uses: actions/setup-node@v4 - with: - node-version: 16 - cache: npm - - name: Install dependencies - run: npm ci - - name: Build application - run: npm run build -w apps/smart-forms-app - - jest-test: - name: Jest Tests - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Use Node.js 16.x - uses: actions/setup-node@v4 - with: - node-version: 16 - cache: npm - - name: Install dependencies - run: npm ci - - name: Run jest tests - run: npm run test -w packages/smart-forms-renderer - - uses: codecov/codecov-action@v4 - - playwright-test: - name: Playwright Tests - timeout-minutes: 60 - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: 16 - cache: npm - - name: Install dependencies - run: npm ci - - name: Install Playwright Browsers - run: npx playwright install --with-deps - - name: Run Playwright tests - run: npm run playwright -w apps/smart-forms-app - - uses: actions/upload-artifact@v4 - if: always() - with: - build: npm run build -w apps/smart-forms-app - start: npm run preview -w apps/smart-forms-app - name: playwright-report - path: playwright-report/ - retention-days: 30 - - lint: - name: Lint - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Use Node.js 16.x - uses: actions/setup-node@v4 - with: - node-version: 16 - cache: npm - - - name: Install dependencies - run: npm ci - - - name: Run linter - run: npm run lint - - - name: Check formatting - run: npm run check-formatting - - deploy-storybook: - name: Deploy Storybook to S3 - runs-on: ubuntu-latest - permissions: - contents: read - pages: write - id-token: write - steps: - - uses: actions/checkout@v4 - - - name: Use Node.js 18.x - uses: actions/setup-node@v4 - with: - node-version: 18 - cache: npm - - - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 - with: - role-to-assume: arn:aws:iam::209248795938:role/SmartFormsReactAppDeployment - aws-region: ap-southeast-2 - - - name: Install dependencies - run: npm ci - - - name: Build application - run: npm run build-storybook -w packages/smart-forms-renderer - - - name: Upload static Storybook site to S3 - run: aws s3 sync packages/smart-forms-renderer/storybook-static s3://smart-forms-storybook/storybook diff --git a/.github/workflows/deploy-apps.yml b/.github/workflows/deploy-apps.yml new file mode 100644 index 00000000..13387821 --- /dev/null +++ b/.github/workflows/deploy-apps.yml @@ -0,0 +1,13 @@ +name: Deploy Apps +on: + workflow_dispatch: + push: + branches: + - main + +jobs: + deploy: + name: Deploy + uses: ./.github/workflows/deploy.yml + secrets: + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 00000000..20405814 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,39 @@ +name: Deploy +on: + workflow_call: + secrets: + NPM_TOKEN: + required: true +jobs: + #--------------------------------------------------------------------------------------------------------------------- + # Deploy + #--------------------------------------------------------------------------------------------------------------------- + deploy: + name: Deploy + runs-on: ${{ matrix.os }} + strategy: + matrix: + node-version: + - 20.16 + os: + - ubuntu-latest + steps: + - name: Prepare + uses: actions/checkout@v3 + + - name: Set Up Node JS + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.java-version }} + check-latest: false + + - name: Installing Packages + run: npm install + + - name: Set up npm + run: | + echo "registry=https://repository.konsulin.care/repository/smart-forms/" > .npmrc + echo "//repository.konsulin.care/repository/smart-forms/:_authToken=${{ SECRETS.NPM_TOKEN }}" >> .npmrc + + - name: Publish npm package + run: npm publish diff --git a/.github/workflows/deploy_app.yml b/.github/workflows/deploy_app.yml deleted file mode 100644 index e48f9093..00000000 --- a/.github/workflows/deploy_app.yml +++ /dev/null @@ -1,69 +0,0 @@ -name: Smart Forms App Deployment Workflow - -on: - push: - branches: ['main'] - -permissions: - contents: read - pages: write - id-token: write - -jobs: - build: - name: Deploy Smart Forms app to S3 - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - name: Use Node.js 16.x - uses: actions/setup-node@v4 - with: - node-version: 16 - cache: npm - - - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 - with: - role-to-assume: arn:aws:iam::209248795938:role/SmartFormsReactAppDeployment - aws-region: ap-southeast-2 - - - name: Install dependencies - run: npm ci - - - name: Build application - run: npm run build -w apps/smart-forms-app - # export REACT_APP_SENTRY_RELEASE=`git rev-parse --short HEAD` - - # - name: Create Sentry release - # run: | - # export VERSION=`git rev-parse --short HEAD` && \ - # npx sentry-cli releases new $VERSION && \ - # npx sentry-cli releases set-commits $VERSION --local --ignore-empty --ignore-missing && \ - # npx sentry-cli releases files $VERSION upload-sourcemaps build - - - name: Upload static React site to S3 - run: aws s3 sync apps/smart-forms-app/dist s3://smart-forms-react-app/ - - chromatic: - name: Run Chromatic - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Use Node.js 18.x - uses: actions/setup-node@v4 - with: - node-version: 18 - cache: npm - - - name: Install dependencies - run: npm ci - - - name: Run Chromatic - uses: chromaui/action@latest - with: - projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }} - workingDir: packages/smart-forms-renderer diff --git a/.github/workflows/deploy_docs.yml b/.github/workflows/deploy_docs.yml deleted file mode 100644 index 96f0c6d3..00000000 --- a/.github/workflows/deploy_docs.yml +++ /dev/null @@ -1,37 +0,0 @@ -name: Smart Forms Docs Deployment Workflow - -on: - push: - -permissions: - contents: read - pages: write - id-token: write - -jobs: - deploy-docusaurus-s3: - name: Deploy Docusaurus to S3 - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - name: Use Node.js 18.x - uses: actions/setup-node@v4 - with: - node-version: 18 - cache: npm - - - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 - with: - role-to-assume: arn:aws:iam::209248795938:role/SmartFormsReactAppDeployment - aws-region: ap-southeast-2 - - - name: Install dependencies - run: npm ci - - - name: Build documentation website - run: npm run build -w documentation - - - name: Upload static Docusaurus site to S3 - run: aws s3 sync documentation/build s3://smart-forms-docs/docs --cache-control no-cache diff --git a/package.json b/package.json index 188bf89e..a09af609 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,13 @@ { + "name": "smart-forms", + "version": "1.0.0", "scripts": { "lint": "eslint -c .eslintrc.json .", "lint-fix": "eslint -c .eslintrc.json --fix .", "check-formatting": "prettier --check ." + }, + "publishConfig":{ + "registry": "https://repository.konsulin.care/repository/smart-forms/" }, "workspaces": [ "apps/smart-forms-app", From 85d5a49a3c9f92b6938d1d0201c23cc4a50de613 Mon Sep 17 00:00:00 2001 From: dhanifajar15 Date: Mon, 12 Aug 2024 21:35:50 +0700 Subject: [PATCH 2/3] publish package to nexus npm repository --- .github/workflows/build_test_lint.yml | 112 ++++++++++++++++++++++++++ .github/workflows/deploy-apps.yml | 13 --- .github/workflows/deploy.yml | 39 --------- .github/workflows/deploy_app.yml | 99 +++++++++++++++++++++++ .github/workflows/deploy_docs.yml | 37 +++++++++ 5 files changed, 248 insertions(+), 52 deletions(-) create mode 100644 .github/workflows/build_test_lint.yml delete mode 100644 .github/workflows/deploy-apps.yml delete mode 100644 .github/workflows/deploy.yml create mode 100644 .github/workflows/deploy_app.yml create mode 100644 .github/workflows/deploy_docs.yml diff --git a/.github/workflows/build_test_lint.yml b/.github/workflows/build_test_lint.yml new file mode 100644 index 00000000..953b4685 --- /dev/null +++ b/.github/workflows/build_test_lint.yml @@ -0,0 +1,112 @@ +name: Smart Forms Build-Test-Lint Workflow + +on: + push: + +jobs: + build: + name: Build + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Use Node.js 16.x + uses: actions/setup-node@v4 + with: + node-version: 16 + cache: npm + - name: Install dependencies + run: npm ci + - name: Build application + run: npm run build -w apps/smart-forms-app + + jest-test: + name: Jest Tests + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Use Node.js 16.x + uses: actions/setup-node@v4 + with: + node-version: 16 + cache: npm + - name: Install dependencies + run: npm ci + - name: Run jest tests + run: npm run test -w packages/smart-forms-renderer + - uses: codecov/codecov-action@v4 + + playwright-test: + name: Playwright Tests + timeout-minutes: 60 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 16 + cache: npm + - name: Install dependencies + run: npm ci + - name: Install Playwright Browsers + run: npx playwright install --with-deps + - name: Run Playwright tests + run: npm run playwright -w apps/smart-forms-app + - uses: actions/upload-artifact@v4 + if: always() + with: + build: npm run build -w apps/smart-forms-app + start: npm run preview -w apps/smart-forms-app + name: playwright-report + path: playwright-report/ + retention-days: 30 + + lint: + name: Lint + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Use Node.js 16.x + uses: actions/setup-node@v4 + with: + node-version: 16 + cache: npm + + - name: Install dependencies + run: npm ci + + - name: Run linter + run: npm run lint + + - name: Check formatting + run: npm run check-formatting + + deploy-storybook: + name: Deploy Storybook to S3 + runs-on: ubuntu-latest + permissions: + contents: read + pages: write + id-token: write + steps: + - uses: actions/checkout@v4 + + - name: Use Node.js 18.x + uses: actions/setup-node@v4 + with: + node-version: 18 + cache: npm + + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v4 + with: + role-to-assume: arn:aws:iam::209248795938:role/SmartFormsReactAppDeployment + aws-region: ap-southeast-2 + + - name: Install dependencies + run: npm ci + + - name: Build application + run: npm run build-storybook -w packages/smart-forms-renderer + + - name: Upload static Storybook site to S3 + run: aws s3 sync packages/smart-forms-renderer/storybook-static s3://smart-forms-storybook/storybook diff --git a/.github/workflows/deploy-apps.yml b/.github/workflows/deploy-apps.yml deleted file mode 100644 index 13387821..00000000 --- a/.github/workflows/deploy-apps.yml +++ /dev/null @@ -1,13 +0,0 @@ -name: Deploy Apps -on: - workflow_dispatch: - push: - branches: - - main - -jobs: - deploy: - name: Deploy - uses: ./.github/workflows/deploy.yml - secrets: - NPM_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml deleted file mode 100644 index 20405814..00000000 --- a/.github/workflows/deploy.yml +++ /dev/null @@ -1,39 +0,0 @@ -name: Deploy -on: - workflow_call: - secrets: - NPM_TOKEN: - required: true -jobs: - #--------------------------------------------------------------------------------------------------------------------- - # Deploy - #--------------------------------------------------------------------------------------------------------------------- - deploy: - name: Deploy - runs-on: ${{ matrix.os }} - strategy: - matrix: - node-version: - - 20.16 - os: - - ubuntu-latest - steps: - - name: Prepare - uses: actions/checkout@v3 - - - name: Set Up Node JS - uses: actions/setup-node@v3 - with: - node-version: ${{ matrix.java-version }} - check-latest: false - - - name: Installing Packages - run: npm install - - - name: Set up npm - run: | - echo "registry=https://repository.konsulin.care/repository/smart-forms/" > .npmrc - echo "//repository.konsulin.care/repository/smart-forms/:_authToken=${{ SECRETS.NPM_TOKEN }}" >> .npmrc - - - name: Publish npm package - run: npm publish diff --git a/.github/workflows/deploy_app.yml b/.github/workflows/deploy_app.yml new file mode 100644 index 00000000..e3484467 --- /dev/null +++ b/.github/workflows/deploy_app.yml @@ -0,0 +1,99 @@ +name: Smart Forms App Deployment Workflow + +on: + push: + branches: ['main'] + +permissions: + contents: read + pages: write + id-token: write + +jobs: + build: + name: Deploy Smart Forms app to S3 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Use Node.js 16.x + uses: actions/setup-node@v4 + with: + node-version: 16 + cache: npm + + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v4 + with: + role-to-assume: arn:aws:iam::209248795938:role/SmartFormsReactAppDeployment + aws-region: ap-southeast-2 + + - name: Install dependencies + run: npm ci + + - name: Build application + run: npm run build -w apps/smart-forms-app + # export REACT_APP_SENTRY_RELEASE=`git rev-parse --short HEAD` + + # - name: Create Sentry release + # run: | + # export VERSION=`git rev-parse --short HEAD` && \ + # npx sentry-cli releases new $VERSION && \ + # npx sentry-cli releases set-commits $VERSION --local --ignore-empty --ignore-missing && \ + # npx sentry-cli releases files $VERSION upload-sourcemaps build + + - name: Upload static React site to S3 + run: aws s3 sync apps/smart-forms-app/dist s3://smart-forms-react-app/ + + publish: + name: publish + runs-on: ${{ matrix.os }} + strategy: + matrix: + node-version: + - 20.16 + os: + - ubuntu-latest + steps: + - name: Prepare + uses: actions/checkout@v3 + + - name: Set Up Node JS + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node-version }} + check-latest: false + + - name: Installing Packages + run: npm install + + - name: Set up npm + run: | + echo "registry=https://repository.konsulin.care/repository/smart-forms/" > .npmrc + echo "//repository.konsulin.care/repository/smart-forms/:_authToken=${{ SECRETS.NPM_TOKEN }}" >> .npmrc + + - name: Publish npm package + run: npm publish + + chromatic: + name: Run Chromatic + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Use Node.js 18.x + uses: actions/setup-node@v4 + with: + node-version: 18 + cache: npm + + - name: Install dependencies + run: npm ci + + - name: Run Chromatic + uses: chromaui/action@latest + with: + projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }} + workingDir: packages/smart-forms-renderer diff --git a/.github/workflows/deploy_docs.yml b/.github/workflows/deploy_docs.yml new file mode 100644 index 00000000..96f0c6d3 --- /dev/null +++ b/.github/workflows/deploy_docs.yml @@ -0,0 +1,37 @@ +name: Smart Forms Docs Deployment Workflow + +on: + push: + +permissions: + contents: read + pages: write + id-token: write + +jobs: + deploy-docusaurus-s3: + name: Deploy Docusaurus to S3 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Use Node.js 18.x + uses: actions/setup-node@v4 + with: + node-version: 18 + cache: npm + + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v4 + with: + role-to-assume: arn:aws:iam::209248795938:role/SmartFormsReactAppDeployment + aws-region: ap-southeast-2 + + - name: Install dependencies + run: npm ci + + - name: Build documentation website + run: npm run build -w documentation + + - name: Upload static Docusaurus site to S3 + run: aws s3 sync documentation/build s3://smart-forms-docs/docs --cache-control no-cache From e981f4fb4274d2c46c6a5e05fc30ddb4a65cafef Mon Sep 17 00:00:00 2001 From: dhanifajar15 Date: Tue, 13 Aug 2024 07:23:06 +0700 Subject: [PATCH 3/3] remove unused workflow --- .github/workflows/build_test_lint.yml | 112 -------------------------- .github/workflows/deploy_app.yml | 99 ----------------------- .github/workflows/deploy_docs.yml | 37 --------- .github/workflows/publish_app.yml | 36 +++++++++ 4 files changed, 36 insertions(+), 248 deletions(-) delete mode 100644 .github/workflows/build_test_lint.yml delete mode 100644 .github/workflows/deploy_app.yml delete mode 100644 .github/workflows/deploy_docs.yml create mode 100644 .github/workflows/publish_app.yml diff --git a/.github/workflows/build_test_lint.yml b/.github/workflows/build_test_lint.yml deleted file mode 100644 index 953b4685..00000000 --- a/.github/workflows/build_test_lint.yml +++ /dev/null @@ -1,112 +0,0 @@ -name: Smart Forms Build-Test-Lint Workflow - -on: - push: - -jobs: - build: - name: Build - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Use Node.js 16.x - uses: actions/setup-node@v4 - with: - node-version: 16 - cache: npm - - name: Install dependencies - run: npm ci - - name: Build application - run: npm run build -w apps/smart-forms-app - - jest-test: - name: Jest Tests - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Use Node.js 16.x - uses: actions/setup-node@v4 - with: - node-version: 16 - cache: npm - - name: Install dependencies - run: npm ci - - name: Run jest tests - run: npm run test -w packages/smart-forms-renderer - - uses: codecov/codecov-action@v4 - - playwright-test: - name: Playwright Tests - timeout-minutes: 60 - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-node@v4 - with: - node-version: 16 - cache: npm - - name: Install dependencies - run: npm ci - - name: Install Playwright Browsers - run: npx playwright install --with-deps - - name: Run Playwright tests - run: npm run playwright -w apps/smart-forms-app - - uses: actions/upload-artifact@v4 - if: always() - with: - build: npm run build -w apps/smart-forms-app - start: npm run preview -w apps/smart-forms-app - name: playwright-report - path: playwright-report/ - retention-days: 30 - - lint: - name: Lint - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Use Node.js 16.x - uses: actions/setup-node@v4 - with: - node-version: 16 - cache: npm - - - name: Install dependencies - run: npm ci - - - name: Run linter - run: npm run lint - - - name: Check formatting - run: npm run check-formatting - - deploy-storybook: - name: Deploy Storybook to S3 - runs-on: ubuntu-latest - permissions: - contents: read - pages: write - id-token: write - steps: - - uses: actions/checkout@v4 - - - name: Use Node.js 18.x - uses: actions/setup-node@v4 - with: - node-version: 18 - cache: npm - - - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 - with: - role-to-assume: arn:aws:iam::209248795938:role/SmartFormsReactAppDeployment - aws-region: ap-southeast-2 - - - name: Install dependencies - run: npm ci - - - name: Build application - run: npm run build-storybook -w packages/smart-forms-renderer - - - name: Upload static Storybook site to S3 - run: aws s3 sync packages/smart-forms-renderer/storybook-static s3://smart-forms-storybook/storybook diff --git a/.github/workflows/deploy_app.yml b/.github/workflows/deploy_app.yml deleted file mode 100644 index e3484467..00000000 --- a/.github/workflows/deploy_app.yml +++ /dev/null @@ -1,99 +0,0 @@ -name: Smart Forms App Deployment Workflow - -on: - push: - branches: ['main'] - -permissions: - contents: read - pages: write - id-token: write - -jobs: - build: - name: Deploy Smart Forms app to S3 - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - name: Use Node.js 16.x - uses: actions/setup-node@v4 - with: - node-version: 16 - cache: npm - - - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 - with: - role-to-assume: arn:aws:iam::209248795938:role/SmartFormsReactAppDeployment - aws-region: ap-southeast-2 - - - name: Install dependencies - run: npm ci - - - name: Build application - run: npm run build -w apps/smart-forms-app - # export REACT_APP_SENTRY_RELEASE=`git rev-parse --short HEAD` - - # - name: Create Sentry release - # run: | - # export VERSION=`git rev-parse --short HEAD` && \ - # npx sentry-cli releases new $VERSION && \ - # npx sentry-cli releases set-commits $VERSION --local --ignore-empty --ignore-missing && \ - # npx sentry-cli releases files $VERSION upload-sourcemaps build - - - name: Upload static React site to S3 - run: aws s3 sync apps/smart-forms-app/dist s3://smart-forms-react-app/ - - publish: - name: publish - runs-on: ${{ matrix.os }} - strategy: - matrix: - node-version: - - 20.16 - os: - - ubuntu-latest - steps: - - name: Prepare - uses: actions/checkout@v3 - - - name: Set Up Node JS - uses: actions/setup-node@v3 - with: - node-version: ${{ matrix.node-version }} - check-latest: false - - - name: Installing Packages - run: npm install - - - name: Set up npm - run: | - echo "registry=https://repository.konsulin.care/repository/smart-forms/" > .npmrc - echo "//repository.konsulin.care/repository/smart-forms/:_authToken=${{ SECRETS.NPM_TOKEN }}" >> .npmrc - - - name: Publish npm package - run: npm publish - - chromatic: - name: Run Chromatic - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Use Node.js 18.x - uses: actions/setup-node@v4 - with: - node-version: 18 - cache: npm - - - name: Install dependencies - run: npm ci - - - name: Run Chromatic - uses: chromaui/action@latest - with: - projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }} - workingDir: packages/smart-forms-renderer diff --git a/.github/workflows/deploy_docs.yml b/.github/workflows/deploy_docs.yml deleted file mode 100644 index 96f0c6d3..00000000 --- a/.github/workflows/deploy_docs.yml +++ /dev/null @@ -1,37 +0,0 @@ -name: Smart Forms Docs Deployment Workflow - -on: - push: - -permissions: - contents: read - pages: write - id-token: write - -jobs: - deploy-docusaurus-s3: - name: Deploy Docusaurus to S3 - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - name: Use Node.js 18.x - uses: actions/setup-node@v4 - with: - node-version: 18 - cache: npm - - - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 - with: - role-to-assume: arn:aws:iam::209248795938:role/SmartFormsReactAppDeployment - aws-region: ap-southeast-2 - - - name: Install dependencies - run: npm ci - - - name: Build documentation website - run: npm run build -w documentation - - - name: Upload static Docusaurus site to S3 - run: aws s3 sync documentation/build s3://smart-forms-docs/docs --cache-control no-cache diff --git a/.github/workflows/publish_app.yml b/.github/workflows/publish_app.yml new file mode 100644 index 00000000..928651c9 --- /dev/null +++ b/.github/workflows/publish_app.yml @@ -0,0 +1,36 @@ + name: Smart Form App Publish Workflow + on: + push: + branches: ['main'] + + jobs: + publish: + name: Publish App to Nexus Repository + runs-on: ${{ matrix.os }} + strategy: + matrix: + node-version: + - 20.16 + os: + - ubuntu-latest + steps: + - name: Prepare Checkout + uses: actions/checkout@v3 + + - name: Set Up Node JS + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node-version }} + check-latest: false + + - name: Installing Packages + run: npm install + + - name: Set up npm + run: | + echo "registry=https://repository.konsulin.care/repository/smart-forms/" > .npmrc + echo "//repository.konsulin.care/repository/smart-forms/:_authToken=${{ SECRETS.NPM_TOKEN }}" >> .npmrc + + - name: Publish npm package + run: npm publish +