This repository has been archived by the owner on Feb 7, 2024. It is now read-only.
Zowe CICS Explorer #69
Workflow file for this 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
name: Main CI/CD for Zowe CICS Explorer | |
on: | |
push: | |
pull_request: | |
workflow_dispatch: | |
inputs: | |
version: | |
description: Version to be published | |
required: true | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 60 | |
concurrency: | |
group: ${{ matrix.os }}-node-${{ matrix.node-version }}-ci-${{ github.ref }} | |
cancel-in-progress: true | |
strategy: | |
# Continue to run tests on the other systems if one fails | |
fail-fast: false | |
matrix: | |
node-version: [16.x, 18.x] | |
# order operating systems from best to worst | |
os: [windows-latest, ubuntu-latest, macos-latest] | |
if: (github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository) && !contains(github.event.head_commit.message, '[ci skip]') | |
steps: | |
- name: Check out code | |
uses: actions/checkout@v3 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- name: Install Dependencies | |
run: npm i | |
- name: Build | |
run: npm run build | |
- name: Lint | |
run: npm run lint | |
# - name: Tests | |
# run: npm run test | |
deploy: | |
name: deploy_vsix | |
if: github.event_name == 'workflow_dispatch' | |
needs: build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
persist-credentials: false | |
ref: ${{ github.ref }} | |
- name: Use Node.js LTS | |
uses: actions/setup-node@v3 | |
with: | |
node-version: lts/* | |
- name: Install VSCE | |
run: npm i -g vsce | |
- name: Package VSIX | |
run: npm run package | |
# - name: Publish to Marketplace | |
# run: vsce publish -p ${{ secrets.VSCODE_TOKEN }} | |
- uses: zowe-actions/octorelease@master | |
id: octorelease | |
if: ${{ !contains(github.event.inputs.version, '-SNAPSHOT') }} | |
env: | |
GIT_COMMITTER_NAME: ${{ secrets.ZOWE_ROBOT_USER }} | |
GIT_COMMITTER_EMAIL: ${{ secrets.ZOWE_ROBOT_EMAIL }} | |
GIT_CREDENTIALS: x-access-token:${{ secrets.ZOWE_ROBOT_TOKEN }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
OVSX_PAT: ${{ secrets.OPENVSX_PUBLISH_TOKEN }} | |
VSCE_PAT: ${{ secrets.VSCODE_TOKEN }} | |
with: | |
config-dir: .github | |
new-version: ${{ github.event.inputs.version }} | |
- name: Create Snapshot Version | |
if: steps.octorelease.outcome == 'success' | |
uses: zowe-actions/octorelease/script@master | |
env: | |
VERSION_STRING: "%s-SNAPSHOT" | |
with: | |
config-dir: .github | |
script: prepareRelease |