From e83e1f1213a130d72406591535c5bc7bf334cbb6 Mon Sep 17 00:00:00 2001 From: James Struga Date: Mon, 7 Feb 2022 16:43:50 -0500 Subject: [PATCH] Create build-core.yml --- .github/workflows/build-core.yml | 102 +++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 .github/workflows/build-core.yml diff --git a/.github/workflows/build-core.yml b/.github/workflows/build-core.yml new file mode 100644 index 00000000..1e88b6ab --- /dev/null +++ b/.github/workflows/build-core.yml @@ -0,0 +1,102 @@ +name: Build Core +on: + push: + branches: + - v2.x/staging + pull_request: + types: [opened, reopened, synchronize] + + workflow_dispatch: + inputs: + ZLUX_APP_MANAGER: + description: 'zlux-app-manager PR number' + required: false + ZLUX_APP_SERVER: + description: 'zlux-app-server PR number' + required: false + ZLUX_BUILD: + description: 'zlux-build PR number' + required: false + ZLUX_PLATFORM: + description: 'zlux-platform PR number' + required: false + + ZLUX_SERVER_FRAMEWORK: + description: 'zlux-server-framework PR number' + required: false + ZLUX_SHARED: + description: 'zlux-shared PR number' + required: false + DEFAULT_BRANCH: + description: 'please enter the default branch you would like to build with, default will be v2.x/staging' + required: false + default: 'v2.x/staging' + +jobs: + check-permission: + runs-on: ubuntu-latest + steps: + # this action will fail the whole workflow if permission check fails + - name: check permission + uses: zowe-actions/shared-actions/permission-check@main + with: + user: ${{ github.actor }} + github-repo: ${{ github.repository }} + github-token: ${{ secrets.GITHUB_TOKEN }} + + build: + runs-on: ubuntu-latest + needs: check-permission + steps: + + - name: '[Prep 1] Cache node modules' + uses: actions/cache@v2 + with: + # npm cache files are stored in `~/.npm` on Linux/macOS + path: | + ~/.npm + ~/.nvm/.cache + ~/.nvm/versions + key: ${{ runner.os }}-build-cache-node-modules-${{ hashFiles('**/package-lock.json') }} + restore-keys: | + ${{ runner.os }}-build-cache-node-modules- + + - name: '[Prep 2] Setup Node' + uses: actions/setup-node@v2 + with: + node-version: 14 + + - name: '[Prep 3] Setup jFrog CLI' + uses: jfrog/setup-jfrog-cli@v2 + env: + JF_ARTIFACTORY_1: ${{ secrets.JF_ARTIFACTORY_TOKEN }} + + - name: '[Prep 4] prepare workflow' + uses: zowe-actions/zlux-builds/core/prepare@v2.x/main + with: + github-user: ${{ secrets.ZOWE_ROBOT_USER }} + github-password: ${{ secrets.ZOWE_ROBOT_TOKEN }} + github-email: ${{ secrets.ZOWE_ROBOT_EMAIL }} + github-branch: ${{ github.event.inputs.BRANCH_NAME }} + default-base: ${{ github.event.inputs.DEFAULT_BRANCH }} + + - name: '[Prep 5] build' + uses: zowe-actions/zlux-builds/core/build@v2.x/main + with: + zlux-app-manager: ${{ github.event.inputs.ZLUX_APP_MANAGER }} + zlux-app-server: ${{ github.event.inputs.ZLUX_APP_SERVER }} + zlux-build: ${{ github.event.inputs.ZLUX_BUILD }} + zlux-platform: ${{ github.event.inputs.ZLUX_PLATFORM }} + zlux-server-framework: ${{ github.event.inputs.ZLUX_SERVER_FRAMEWORK }} + zlux-shared: ${{ github.event.inputs.ZLUX_SHARED }} + + - name: '[Prep 6] packaging' + uses: zowe-actions/zlux-builds/core/package@v2.x/main + with: + pax-ssh-username: ${{ secrets.SSH_MARIST_USERNAME }} + pax-ssh-password: ${{ secrets.SSH_MARIST_RACF_PASSWORD }} + pax-name: zlux-core + + - name: '[Prep 7] deploy' + uses: zowe-actions/zlux-builds/core/deploy@v2.x/main +