-
Notifications
You must be signed in to change notification settings - Fork 30
94 lines (79 loc) · 2.93 KB
/
build-rexxconfigmgr.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
name: Build REXX configmgr
permissions:
id-token: write
issues: write
pull-requests: write
contents: write
on:
push:
branches:
- v3.x/staging
- v3.x/master
- v3.x/rc
pull_request:
types: [opened, reopened, synchronize]
workflow_dispatch:
inputs:
PERFORM_RELEASE:
description: '[Release] perform release'
required: false
default: 'false'
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:
github-token: ${{ secrets.GITHUB_TOKEN }}
build-test:
runs-on: ubuntu-latest
needs: check-permission
steps:
- name: '[Prep 1] Checkout'
uses: actions/checkout@v2
- name: '[Dep 1] Libyaml'
uses: actions/checkout@v3
with:
repository: yaml/libyaml
path: deps/configmgr/libyaml
ref: '0.2.5'
- name: '[Dep 2] Quickjs'
uses: actions/checkout@v3
with:
repository: joenemo/quickjs-portable
path: deps/configmgr/quickjs
ref: 'main'
- name: '[Prep 2] Setup jFrog CLI'
uses: jfrog/setup-jfrog-cli@v2
env:
JF_ARTIFACTORY_1: ${{ secrets.JF_ARTIFACTORY_TOKEN }}
- name: '[Prep 3] Set date'
id: date
run: echo "date=$(date +'%Y%m%d%S')" >> $GITHUB_OUTPUT
- name: '[Prep 4] Set version'
id: version
run: echo "version=$(cat build/configmgr.proj.env | grep VERSION | cut -f 2 -d=)" >> $GITHUB_OUTPUT
- name: '[Prep 5] Set branchname'
id: branch
run: echo "branch=$(if [ -n '${{ github.head_ref }}' ]; then echo '${{ github.head_ref }}' | tr '[:lower:]' '[:upper:]'; else echo '${{ github.ref_name }}' | tr '[:lower:]' '[:upper:]'; fi | sed 's@/@-@g')" >> $GITHUB_OUTPUT
- name: '[Prep 6] Prepare workflow'
uses: zowe-actions/shared-actions/prepare-workflow@main
- name: '[Packaging] Make pax'
uses: zowe-actions/shared-actions/make-pax@main
with:
pax-name: 'configmgr-rexx'
pax-options: '-x os390 -pp'
pax-local-workspace: './.pax/configmgr-rexx'
pax-ssh-username: ${{ secrets.SSH_MARIST_USERNAME }}
pax-ssh-password: ${{ secrets.SSH_MARIST_RACF_PASSWORD }}
- name: '[Publish] Publish'
uses: zowe-actions/shared-actions/publish@main
if: success()
with:
artifacts: |
.pax/configmgr-rexx/configmgr-rexx.pax
publish-target-path-pattern: libs-snapshot-local/org/zowe/configmgr-rexx/${{ steps.version.outputs.version }}-${{ steps.branch.outputs.branch }}
publish-target-file-pattern: configmgr-rexx-${{ steps.version.outputs.version }}-${{ steps.date.outputs.date }}.pax
perform-release: ${{ github.event.inputs.PERFORM_RELEASE }}