Skip to content

Commit 3063da9

Browse files
authored
Merge pull request #11097 from swagger-api/issue-10040
Issue 10040
2 parents ca9a002 + 18088fd commit 3063da9

12 files changed

+1004
-13
lines changed
Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
name: Test Framework V2 Typescript Angular v10
2+
3+
on:
4+
# execute on demand
5+
workflow_dispatch:
6+
branches: ["master"]
7+
8+
jobs:
9+
10+
# builds codegen cli and uploads its artifact
11+
build-codegen:
12+
13+
runs-on: ubuntu-latest
14+
15+
strategy:
16+
matrix:
17+
java: [ 8 ]
18+
19+
steps:
20+
- uses: actions/checkout@v2
21+
- uses: actions/setup-java@v1
22+
with:
23+
java-version: ${{ matrix.java }}
24+
- name: build codegen
25+
run: |
26+
mkdir codegen-cli
27+
echo "BUILDING ${{ env.VERSION }}"
28+
mvn -version
29+
mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3
30+
cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli
31+
- name: upload codegen cli
32+
uses: actions/upload-artifact@v2
33+
with:
34+
name: codegen-cli
35+
path: codegen-cli
36+
37+
env:
38+
VERSION: ${{ github.event.inputs.version }}
39+
40+
generate:
41+
42+
needs: build-codegen
43+
44+
runs-on: ubuntu-latest
45+
46+
strategy:
47+
matrix:
48+
java: [ 8 ]
49+
50+
51+
outputs:
52+
generate_outcome: ${{ steps.outcome.outputs.generate_outcome }}
53+
54+
steps:
55+
- uses: actions/checkout@v2
56+
- uses: actions/setup-java@v1
57+
with:
58+
java-version: ${{ matrix.java }}
59+
- name: Download codegen cli
60+
uses: actions/download-artifact@v2
61+
with:
62+
name: codegen-cli
63+
- name: generate
64+
id: generate
65+
continue-on-error: true
66+
uses: ./.github/actions/generate
67+
with:
68+
language: typescript-angular
69+
job-name: ${{ env.JOB_NAME }}
70+
spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml
71+
options: -DnpmName=@swagger/angular2-typescript-petstore,npmVersion=0.0.1,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,ngVersion=10.0.0
72+
- id: outcome
73+
run: |
74+
echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}"
75+
echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }}
76+
- name: upload generate outcome
77+
uses: actions/upload-artifact@v2
78+
with:
79+
name: ${{ env.JOB_NAME }}generate_outcome
80+
path: generate_outcome_${{ env.JOB_NAME }}
81+
- name: upload generate logs
82+
uses: actions/upload-artifact@v2
83+
with:
84+
name: ${{ env.JOB_NAME }}generate_logs
85+
path: ${{ steps.generate.outputs.logs }}
86+
- name: upload generated code
87+
if: contains(steps.generate.outcome, 'success')
88+
uses: actions/upload-artifact@v2
89+
with:
90+
name: ${{ env.JOB_NAME }}generated
91+
path: ${{ steps.generate.outputs.path }}
92+
env:
93+
JOB_NAME: "typescript-angular-v10-v2-sample"
94+
95+
build:
96+
97+
needs: generate
98+
if: contains(needs.generate.outputs.generate_outcome, 'success')
99+
runs-on: ubuntu-latest
100+
101+
strategy:
102+
###############################################
103+
##### DYNAMIC: Dependent on build environment
104+
###############################################
105+
matrix:
106+
node-version: [12.x]
107+
java: [ 8 ]
108+
###############################################
109+
##### END DYNAMIC: Dependent on build environment
110+
###############################################
111+
steps:
112+
- uses: actions/checkout@v2
113+
- name: Download artifacts
114+
uses: actions/download-artifact@v2
115+
with:
116+
name: ${{ env.JOB_NAME }}generated
117+
path: generated/${{ env.JOB_NAME }}
118+
- name: Download logs
119+
uses: actions/download-artifact@v2
120+
with:
121+
name: ${{ env.JOB_NAME }}generate_logs
122+
###############################################
123+
##### DYNAMIC: Dependent on build environment
124+
###############################################
125+
- name: Use Node.js ${{ matrix.node-version }}
126+
uses: actions/setup-node@v1
127+
with:
128+
node-version: ${{ matrix.node-version }}
129+
###############################################
130+
##### END DYNAMIC: Dependent on build environment
131+
###############################################
132+
- name: build
133+
id: build
134+
uses: ./.github/actions/build
135+
continue-on-error: true
136+
with:
137+
path: generated/${{ env.JOB_NAME }}
138+
job-name: ${{ env.JOB_NAME }}
139+
build-commands: "npm install -g @angular/cli__&&__npm install -g ng-packagr__&&__npm i__&&__ng-packagr -p ng-package.json"
140+
- id: outcome
141+
run: |
142+
echo "::set-output name=build_outcome::${{ steps.build.outcome }}"
143+
echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome
144+
- name: upload build outcome
145+
uses: actions/upload-artifact@v2
146+
with:
147+
name: ${{ env.JOB_NAME }}build_outcome
148+
path: ${{ env.JOB_NAME }}build_outcome
149+
- name: upload logs
150+
uses: actions/upload-artifact@v2
151+
with:
152+
name: ${{ env.JOB_NAME }}logs
153+
path: ${{ steps.build.outputs.logs }}
154+
env:
155+
LANGUAGE: ${{ github.event.inputs.language }}
156+
JOB_NAME: "typescript-angular-v10-v2-sample"
Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
name: Test Framework V2 Typescript Angular v11
2+
3+
on:
4+
# execute on demand
5+
workflow_dispatch:
6+
branches: ["master"]
7+
8+
jobs:
9+
10+
# builds codegen cli and uploads its artifact
11+
build-codegen:
12+
13+
runs-on: ubuntu-latest
14+
15+
strategy:
16+
matrix:
17+
java: [ 8 ]
18+
19+
steps:
20+
- uses: actions/checkout@v2
21+
- uses: actions/setup-java@v1
22+
with:
23+
java-version: ${{ matrix.java }}
24+
- name: build codegen
25+
run: |
26+
mkdir codegen-cli
27+
echo "BUILDING ${{ env.VERSION }}"
28+
mvn -version
29+
mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3
30+
cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli
31+
- name: upload codegen cli
32+
uses: actions/upload-artifact@v2
33+
with:
34+
name: codegen-cli
35+
path: codegen-cli
36+
37+
env:
38+
VERSION: ${{ github.event.inputs.version }}
39+
40+
generate:
41+
42+
needs: build-codegen
43+
44+
runs-on: ubuntu-latest
45+
46+
strategy:
47+
matrix:
48+
java: [ 8 ]
49+
50+
51+
outputs:
52+
generate_outcome: ${{ steps.outcome.outputs.generate_outcome }}
53+
54+
steps:
55+
- uses: actions/checkout@v2
56+
- uses: actions/setup-java@v1
57+
with:
58+
java-version: ${{ matrix.java }}
59+
- name: Download codegen cli
60+
uses: actions/download-artifact@v2
61+
with:
62+
name: codegen-cli
63+
- name: generate
64+
id: generate
65+
continue-on-error: true
66+
uses: ./.github/actions/generate
67+
with:
68+
language: typescript-angular
69+
job-name: ${{ env.JOB_NAME }}
70+
spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml
71+
options: -DnpmName=@swagger/angular2-typescript-petstore,npmVersion=0.0.1,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,ngVersion=11.0.0
72+
- id: outcome
73+
run: |
74+
echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}"
75+
echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }}
76+
- name: upload generate outcome
77+
uses: actions/upload-artifact@v2
78+
with:
79+
name: ${{ env.JOB_NAME }}generate_outcome
80+
path: generate_outcome_${{ env.JOB_NAME }}
81+
- name: upload generate logs
82+
uses: actions/upload-artifact@v2
83+
with:
84+
name: ${{ env.JOB_NAME }}generate_logs
85+
path: ${{ steps.generate.outputs.logs }}
86+
- name: upload generated code
87+
if: contains(steps.generate.outcome, 'success')
88+
uses: actions/upload-artifact@v2
89+
with:
90+
name: ${{ env.JOB_NAME }}generated
91+
path: ${{ steps.generate.outputs.path }}
92+
env:
93+
JOB_NAME: "typescript-angular-v11-v2-sample"
94+
95+
build:
96+
97+
needs: generate
98+
if: contains(needs.generate.outputs.generate_outcome, 'success')
99+
runs-on: ubuntu-latest
100+
101+
strategy:
102+
###############################################
103+
##### DYNAMIC: Dependent on build environment
104+
###############################################
105+
matrix:
106+
node-version: [12.x]
107+
java: [ 8 ]
108+
###############################################
109+
##### END DYNAMIC: Dependent on build environment
110+
###############################################
111+
steps:
112+
- uses: actions/checkout@v2
113+
- name: Download artifacts
114+
uses: actions/download-artifact@v2
115+
with:
116+
name: ${{ env.JOB_NAME }}generated
117+
path: generated/${{ env.JOB_NAME }}
118+
- name: Download logs
119+
uses: actions/download-artifact@v2
120+
with:
121+
name: ${{ env.JOB_NAME }}generate_logs
122+
###############################################
123+
##### DYNAMIC: Dependent on build environment
124+
###############################################
125+
- name: Use Node.js ${{ matrix.node-version }}
126+
uses: actions/setup-node@v1
127+
with:
128+
node-version: ${{ matrix.node-version }}
129+
###############################################
130+
##### END DYNAMIC: Dependent on build environment
131+
###############################################
132+
- name: build
133+
id: build
134+
uses: ./.github/actions/build
135+
continue-on-error: true
136+
with:
137+
path: generated/${{ env.JOB_NAME }}
138+
job-name: ${{ env.JOB_NAME }}
139+
build-commands: "npm install -g @angular/cli__&&__npm install -g ng-packagr__&&__npm i__&&__ng-packagr -p ng-package.json"
140+
- id: outcome
141+
run: |
142+
echo "::set-output name=build_outcome::${{ steps.build.outcome }}"
143+
echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome
144+
- name: upload build outcome
145+
uses: actions/upload-artifact@v2
146+
with:
147+
name: ${{ env.JOB_NAME }}build_outcome
148+
path: ${{ env.JOB_NAME }}build_outcome
149+
- name: upload logs
150+
uses: actions/upload-artifact@v2
151+
with:
152+
name: ${{ env.JOB_NAME }}logs
153+
path: ${{ steps.build.outputs.logs }}
154+
env:
155+
LANGUAGE: ${{ github.event.inputs.language }}
156+
JOB_NAME: "typescript-angular-v11-v2-sample"

0 commit comments

Comments
 (0)