Skip to content

Commit 8b46ee6

Browse files
committed
added go workflows. Files for v3 skipped until test files are added for this generator samples
1 parent 060df12 commit 8b46ee6

File tree

3 files changed

+512
-0
lines changed

3 files changed

+512
-0
lines changed
Lines changed: 162 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,162 @@
1+
name: Test Framework V2 Go Server
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+
32+
mkdir test-cfg-files
33+
cp samples/client/petstore/javascript/pom.xml test-cfg-files
34+
- name: upload codegen cli
35+
uses: actions/upload-artifact@v2
36+
with:
37+
name: codegen-cli
38+
path: codegen-cli
39+
- name: upload test cfg file
40+
uses: actions/upload-artifact@v2
41+
with:
42+
name: test-cfg-files
43+
path: test-cfg-files
44+
45+
env:
46+
VERSION: ${{ github.event.inputs.version }}
47+
48+
generate:
49+
50+
needs: build-codegen
51+
52+
runs-on: ubuntu-latest
53+
54+
strategy:
55+
matrix:
56+
java: [ 8 ]
57+
58+
59+
outputs:
60+
generate_outcome: ${{ steps.outcome.outputs.generate_outcome }}
61+
62+
steps:
63+
- uses: actions/checkout@v2
64+
- uses: actions/setup-java@v1
65+
with:
66+
java-version: ${{ matrix.java }}
67+
- name: Download codegen cli
68+
uses: actions/download-artifact@v2
69+
with:
70+
name: codegen-cli
71+
- name: generate
72+
id: generate
73+
continue-on-error: true
74+
uses: ./.github/actions/generate
75+
with:
76+
language: go-server
77+
job-name: ${{ env.JOB_NAME }}
78+
spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml
79+
options: " --additional-properties hideGenerationTimestamp=true -Dservice"
80+
- id: outcome
81+
run: |
82+
echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}"
83+
echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }}
84+
- name: upload generate outcome
85+
uses: actions/upload-artifact@v2
86+
with:
87+
name: ${{ env.JOB_NAME }}generate_outcome
88+
path: generate_outcome_${{ env.JOB_NAME }}
89+
- name: upload generate logs
90+
uses: actions/upload-artifact@v2
91+
with:
92+
name: ${{ env.JOB_NAME }}generate_logs
93+
path: ${{ steps.generate.outputs.logs }}
94+
- name: upload generated code
95+
if: contains(steps.generate.outcome, 'success')
96+
uses: actions/upload-artifact@v2
97+
with:
98+
name: ${{ env.JOB_NAME }}generated
99+
path: ${{ steps.generate.outputs.path }}
100+
env:
101+
JOB_NAME: "go-server-v2-sample"
102+
103+
104+
build:
105+
106+
needs: generate
107+
if: contains(needs.generate.outputs.generate_outcome, 'success')
108+
runs-on: ubuntu-latest
109+
110+
strategy:
111+
###############################################
112+
##### DYNAMIC: Dependent on build environment
113+
###############################################
114+
matrix:
115+
go-version: ['^1.13.1']
116+
###############################################
117+
##### END DYNAMIC: Dependent on build environment
118+
###############################################
119+
steps:
120+
- uses: actions/checkout@v2
121+
- name: Download artifacts
122+
uses: actions/download-artifact@v2
123+
with:
124+
name: ${{ env.JOB_NAME }}generated
125+
path: generated/${{ env.JOB_NAME }}
126+
- name: Download logs
127+
uses: actions/download-artifact@v2
128+
with:
129+
name: ${{ env.JOB_NAME }}generate_logs
130+
###############################################
131+
##### DYNAMIC: Dependent on build environment
132+
###############################################
133+
- uses: actions/setup-go@v2
134+
with:
135+
go-version: ${{ matrix.go-version }}
136+
###############################################
137+
##### END DYNAMIC: Dependent on build environment
138+
###############################################
139+
- name: build
140+
id: build
141+
uses: ./.github/actions/build
142+
continue-on-error: true
143+
with:
144+
path: generated/${{ env.JOB_NAME }}
145+
job-name: ${{ env.JOB_NAME }}
146+
build-commands: go mod init main__&&__go build
147+
- id: outcome
148+
run: |
149+
echo "::set-output name=build_outcome::${{ steps.build.outcome }}"
150+
echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome
151+
- name: upload build outcome
152+
uses: actions/upload-artifact@v2
153+
with:
154+
name: ${{ env.JOB_NAME }}build_outcome
155+
path: ${{ env.JOB_NAME }}build_outcome
156+
- name: upload logs
157+
uses: actions/upload-artifact@v2
158+
with:
159+
name: ${{ env.JOB_NAME }}logs
160+
path: ${{ steps.build.outputs.logs }}
161+
env:
162+
JOB_NAME: "go-server-v2-sample"
Lines changed: 175 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,175 @@
1+
name: Test Framework V2 Go With XML
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+
32+
mkdir test-cfg-files
33+
cp samples/client/petstore/go/pom.xml test-cfg-files
34+
cp samples/client/petstore/go/auth_test.go test-cfg-files
35+
cp samples/client/petstore/go/pet_api_test.go test-cfg-files
36+
cp samples/client/petstore/go/user_api_test.go test-cfg-files
37+
cp samples/client/petstore/go/test.go.bak test-cfg-files
38+
- name: upload codegen cli
39+
uses: actions/upload-artifact@v2
40+
with:
41+
name: codegen-cli
42+
path: codegen-cli
43+
- name: upload test cfg file
44+
uses: actions/upload-artifact@v2
45+
with:
46+
name: test-cfg-files
47+
path: test-cfg-files
48+
49+
env:
50+
VERSION: ${{ github.event.inputs.version }}
51+
52+
generate:
53+
54+
needs: build-codegen
55+
56+
runs-on: ubuntu-latest
57+
58+
strategy:
59+
matrix:
60+
java: [ 8 ]
61+
62+
63+
outputs:
64+
generate_outcome: ${{ steps.outcome.outputs.generate_outcome }}
65+
66+
steps:
67+
- uses: actions/checkout@v2
68+
- uses: actions/setup-java@v1
69+
with:
70+
java-version: ${{ matrix.java }}
71+
- name: Download codegen cli
72+
uses: actions/download-artifact@v2
73+
with:
74+
name: codegen-cli
75+
- name: generate
76+
id: generate
77+
continue-on-error: true
78+
uses: ./.github/actions/generate
79+
with:
80+
language: go
81+
job-name: ${{ env.JOB_NAME }}
82+
spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
83+
options: " -DpackageName=petstore,withXml=true"
84+
- id: outcome
85+
run: |
86+
echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}"
87+
echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }}
88+
- name: upload generate outcome
89+
uses: actions/upload-artifact@v2
90+
with:
91+
name: ${{ env.JOB_NAME }}generate_outcome
92+
path: generate_outcome_${{ env.JOB_NAME }}
93+
- name: upload generate logs
94+
uses: actions/upload-artifact@v2
95+
with:
96+
name: ${{ env.JOB_NAME }}generate_logs
97+
path: ${{ steps.generate.outputs.logs }}
98+
- name: upload generated code
99+
if: contains(steps.generate.outcome, 'success')
100+
uses: actions/upload-artifact@v2
101+
with:
102+
name: ${{ env.JOB_NAME }}generated
103+
path: ${{ steps.generate.outputs.path }}
104+
env:
105+
JOB_NAME: "go-with-xml-v2-sample"
106+
107+
108+
build:
109+
110+
needs: generate
111+
if: contains(needs.generate.outputs.generate_outcome, 'success')
112+
runs-on: ubuntu-latest
113+
114+
strategy:
115+
###############################################
116+
##### DYNAMIC: Dependent on build environment
117+
###############################################
118+
matrix:
119+
go-version: ['^1.13.1']
120+
java: [ 8 ]
121+
###############################################
122+
##### END DYNAMIC: Dependent on build environment
123+
###############################################
124+
steps:
125+
- uses: actions/checkout@v2
126+
- name: Download artifacts
127+
uses: actions/download-artifact@v2
128+
with:
129+
name: ${{ env.JOB_NAME }}generated
130+
path: generated/${{ env.JOB_NAME }}
131+
- name: Download logs
132+
uses: actions/download-artifact@v2
133+
with:
134+
name: ${{ env.JOB_NAME }}generate_logs
135+
- name: Download Javascript V2 test cfg files
136+
uses: actions/download-artifact@v2
137+
with:
138+
name: test-cfg-files
139+
path: generated
140+
###############################################
141+
##### DYNAMIC: Dependent on build environment
142+
###############################################
143+
- uses: actions/setup-go@v2
144+
with:
145+
go-version: ${{ matrix.go-version }}
146+
- uses: actions/setup-java@v1
147+
with:
148+
java-version: ${{ matrix.java }}
149+
###############################################
150+
##### END DYNAMIC: Dependent on build environment
151+
###############################################
152+
- name: build
153+
id: build
154+
uses: ./.github/actions/build
155+
continue-on-error: true
156+
with:
157+
path: generated
158+
job-name: ${{ env.JOB_NAME }}
159+
build-commands: mvn verify
160+
- id: outcome
161+
run: |
162+
echo "::set-output name=build_outcome::${{ steps.build.outcome }}"
163+
echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome
164+
- name: upload build outcome
165+
uses: actions/upload-artifact@v2
166+
with:
167+
name: ${{ env.JOB_NAME }}build_outcome
168+
path: ${{ env.JOB_NAME }}build_outcome
169+
- name: upload logs
170+
uses: actions/upload-artifact@v2
171+
with:
172+
name: ${{ env.JOB_NAME }}logs
173+
path: ${{ steps.build.outputs.logs }}
174+
env:
175+
JOB_NAME: "go-with-xml-v2-sample"

0 commit comments

Comments
 (0)