diff --git a/.github/workflows/test-framework-v2-android-httpclient.yml b/.github/workflows/test-framework-v2-android-httpclient.yml new file mode 100644 index 00000000000..4987add8d74 --- /dev/null +++ b/.github/workflows/test-framework-v2-android-httpclient.yml @@ -0,0 +1,153 @@ +name: Test Framework V2 Android HTTP Client + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "android" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " -Dlibrary=httpclient" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "android-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: compile "io.swagger:swagger-android-client:1.0.0" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "android-v2-sample" diff --git a/.github/workflows/test-framework-v2-android-volley.yml b/.github/workflows/test-framework-v2-android-volley.yml new file mode 100644 index 00000000000..b22a822203c --- /dev/null +++ b/.github/workflows/test-framework-v2-android-volley.yml @@ -0,0 +1,153 @@ +name: Test Framework V2 Android Volley + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "android" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " -Dlibrary=volley" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "android-volley-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: compile "io.swagger:swagger-android-client:1.0.0" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "android-volley-v2-sample" diff --git a/.github/workflows/test-framework-v2-aspnetcore-interface-controller.yml b/.github/workflows/test-framework-v2-aspnetcore-interface-controller.yml new file mode 100644 index 00000000000..4c94039e377 --- /dev/null +++ b/.github/workflows/test-framework-v2-aspnetcore-interface-controller.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Aspnetcore Interface Controller + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "aspnetcore" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties interface-controller=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "aspnetcore-interface-controller-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "aspnetcore-interface-controller-v2-sample" diff --git a/.github/workflows/test-framework-v2-aspnetcore-interface-only.yml b/.github/workflows/test-framework-v2-aspnetcore-interface-only.yml new file mode 100644 index 00000000000..1f4dfdf7f89 --- /dev/null +++ b/.github/workflows/test-framework-v2-aspnetcore-interface-only.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Aspnetcore Interface Only + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "aspnetcore" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties interface-only=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "aspnetcore-interface-only-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "aspnetcore-interface-only-v2-sample" diff --git a/.github/workflows/test-framework-v2-aspnetcore-v22-interface-controller.yml b/.github/workflows/test-framework-v2-aspnetcore-v22-interface-controller.yml new file mode 100644 index 00000000000..61e1dd2b2d1 --- /dev/null +++ b/.github/workflows/test-framework-v2-aspnetcore-v22-interface-controller.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Aspnetcore v22 Interface Controller + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "aspnetcore" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties interface-controller=true --additional-properties aspnetCoreVersion=2.2" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "aspnetcore-v22-interface-controller-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "aspnetcore-v22-interface-controller-v2-sample" diff --git a/.github/workflows/test-framework-v2-aspnetcore-v22-interface-only.yml b/.github/workflows/test-framework-v2-aspnetcore-v22-interface-only.yml new file mode 100644 index 00000000000..c27367f5a6b --- /dev/null +++ b/.github/workflows/test-framework-v2-aspnetcore-v22-interface-only.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Aspnetcore v22 Interface Only + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "3aspnetcore" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties interface-only=true --additional-properties aspnetCoreVersion=2.2" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB ][]_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "aspnetcore-v22-interface-only-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "aspnetcore-v22-interface-only-v2-sample" diff --git a/.github/workflows/test-framework-v2-aspnetcore-v22.yml b/.github/workflows/test-framework-v2-aspnetcore-v22.yml new file mode 100644 index 00000000000..fcffc33f195 --- /dev/null +++ b/.github/workflows/test-framework-v2-aspnetcore-v22.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Aspnetcore v22 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "aspnetcore" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties aspnetCoreVersion=2.2" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "aspnetcore-v22-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "aspnetcore-v22-v2-sample" diff --git a/.github/workflows/test-framework-v2-aspnetcore.yml b/.github/workflows/test-framework-v2-aspnetcore.yml new file mode 100644 index 00000000000..2fdb136489b --- /dev/null +++ b/.github/workflows/test-framework-v2-aspnetcore.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Aspnetcore + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "aspnetcore" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5}" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "aspnetcore-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "aspnetcore-v2-sample" diff --git a/.github/workflows/test-framework-v2-csharp-dotnet2.yml b/.github/workflows/test-framework-v2-csharp-dotnet2.yml new file mode 100644 index 00000000000..1b42610f0b6 --- /dev/null +++ b/.github/workflows/test-framework-v2-csharp-dotnet2.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 CSharp Dotnet2 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp-dotnet2" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " --additional-properties hideGenerationTimestamp=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-dotnet2-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./compile-mono.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-dotnet2-v2-sample" diff --git a/.github/workflows/test-framework-v2-csharp-net-standard.yml b/.github/workflows/test-framework-v2-csharp-net-standard.yml new file mode 100644 index 00000000000..0bb3ce22dab --- /dev/null +++ b/.github/workflows/test-framework-v2-csharp-net-standard.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 CSharp Net Standard + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp" + job-name: ${{ env.JOB_NAME }} + 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" + options: " --additional-properties packageGuid={321C8C3F-0156-40C1-AE42-D59761FB9B6C} -DtargetFramework=v5.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-standard-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-standard-v2-sample" diff --git a/.github/workflows/test-framework-v2-csharp-net35.yml b/.github/workflows/test-framework-v2-csharp-net35.yml new file mode 100644 index 00000000000..5690f1b89b7 --- /dev/null +++ b/.github/workflows/test-framework-v2-csharp-net35.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 CSharp Net v3.5 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp" + job-name: ${{ env.JOB_NAME }} + 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" + options: " --additional-properties packageGuid={321C8C3F-0156-40C1-AE42-D59761FB9B6C} -DtargetFramework=v3.5" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-v35-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-v35-v2-sample" diff --git a/.github/workflows/test-framework-v2-csharp-net40.yml b/.github/workflows/test-framework-v2-csharp-net40.yml new file mode 100644 index 00000000000..ae52b576315 --- /dev/null +++ b/.github/workflows/test-framework-v2-csharp-net40.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 CSharp Net v4.0 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp" + job-name: ${{ env.JOB_NAME }} + 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" + options: " --additional-properties packageGuid={321C8C3F-0156-40C1-AE42-D59761FB9B6C} -DtargetFramework=v4.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-v40-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-v40-v2-sample" diff --git a/.github/workflows/test-framework-v2-csharp-netcore.yml b/.github/workflows/test-framework-v2-csharp-netcore.yml new file mode 100644 index 00000000000..43caa69bcd2 --- /dev/null +++ b/.github/workflows/test-framework-v2-csharp-netcore.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 CSharp Net Core + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp" + job-name: ${{ env.JOB_NAME }} + 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" + options: " --additional-properties packageGuid={321C8C3F-0156-40C1-AE42-D59761FB9B6C},netCoreProjectFile=true -DtargetFramework=v5.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-net-core-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-net-core-v2-sample" diff --git a/.github/workflows/test-framework-v2-csharp-property-changed.yml b/.github/workflows/test-framework-v2-csharp-property-changed.yml new file mode 100644 index 00000000000..a5afed6fe43 --- /dev/null +++ b/.github/workflows/test-framework-v2-csharp-property-changed.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 CSharp Net Property Changed + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp" + job-name: ${{ env.JOB_NAME }} + 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" + options: " --additional-properties packageGuid={321C8C3F-0156-40C1-AE42-D59761FB9B6C},generatePropertyChanged=true -DtargetFramework=v5.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-property-changed-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-property-changed-v2-sample" diff --git a/.github/workflows/test-framework-v2-csharp.yml b/.github/workflows/test-framework-v2-csharp.yml new file mode 100644 index 00000000000..4a89de5e51c --- /dev/null +++ b/.github/workflows/test-framework-v2-csharp.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 CSharp + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp" + job-name: ${{ env.JOB_NAME }} + 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" + options: " --additional-properties packageGuid={321C8C3F-0156-40C1-AE42-D59761FB9B6C}" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-v2-sample" diff --git a/.github/workflows/test-framework-v2-cwiki.yml b/.github/workflows/test-framework-v2-cwiki.yml new file mode 100644 index 00000000000..e5a014cdc53 --- /dev/null +++ b/.github/workflows/test-framework-v2-cwiki.yml @@ -0,0 +1,90 @@ +name: Test Framework V2 CWiki + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: cwiki + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml + options: "" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "cwiki-v2-sample" diff --git a/.github/workflows/test-framework-v2-dart-browser-client.yml b/.github/workflows/test-framework-v2-dart-browser-client.yml new file mode 100644 index 00000000000..3b57fcffd9b --- /dev/null +++ b/.github/workflows/test-framework-v2-dart-browser-client.yml @@ -0,0 +1,139 @@ +name: Test Framework V2 Dart Browser Client + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "dart" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true -DbrowserClient=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "dart-browser-client-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - uses: dart-lang/setup-dart@v1 + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: dart pub get + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "dart-browser-client-v2-sample" diff --git a/.github/workflows/test-framework-v2-dart.yml b/.github/workflows/test-framework-v2-dart.yml new file mode 100644 index 00000000000..4d15f1476e2 --- /dev/null +++ b/.github/workflows/test-framework-v2-dart.yml @@ -0,0 +1,139 @@ +name: Test Framework V2 Dart + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "dart" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true -DbrowserClient=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "dart-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - uses: dart-lang/setup-dart@v1 + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: dart pub get + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "dart-v2-sample" diff --git a/.github/workflows/test-framework-v2-dynamic-html.yml b/.github/workflows/test-framework-v2-dynamic-html.yml new file mode 100644 index 00000000000..e7a89afbcda --- /dev/null +++ b/.github/workflows/test-framework-v2-dynamic-html.yml @@ -0,0 +1,90 @@ +name: Test Framework V2 HTML2 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: dynamic-html + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml + options: "" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "dynamic-html2-v2-sample" diff --git a/.github/workflows/test-framework-v2-go-server.yml b/.github/workflows/test-framework-v2-go-server.yml new file mode 100644 index 00000000000..fccdf6b23df --- /dev/null +++ b/.github/workflows/test-framework-v2-go-server.yml @@ -0,0 +1,162 @@ +name: Test Framework V2 Go Server + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + cp samples/client/petstore/javascript/pom.xml test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: go-server + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml + options: " --additional-properties hideGenerationTimestamp=true -Dservice" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "go-server-v2-sample" + + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + go-version: ['^1.13.1'] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - uses: actions/setup-go@v2 + with: + go-version: ${{ matrix.go-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: go mod init main__&&__go build + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "go-server-v2-sample" diff --git a/.github/workflows/test-framework-v2-go-with-xml.yml b/.github/workflows/test-framework-v2-go-with-xml.yml new file mode 100644 index 00000000000..ce7b728fbd0 --- /dev/null +++ b/.github/workflows/test-framework-v2-go-with-xml.yml @@ -0,0 +1,175 @@ +name: Test Framework V2 Go With XML + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + cp samples/client/petstore/go/pom.xml test-cfg-files + cp samples/client/petstore/go/auth_test.go test-cfg-files + cp samples/client/petstore/go/pet_api_test.go test-cfg-files + cp samples/client/petstore/go/user_api_test.go test-cfg-files + cp samples/client/petstore/go/test.go.bak test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: go + job-name: ${{ env.JOB_NAME }} + 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 + options: " -DpackageName=petstore,withXml=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "go-with-xml-v2-sample" + + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + go-version: ['^1.13.1'] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + - name: Download Javascript V2 test cfg files + uses: actions/download-artifact@v2 + with: + name: test-cfg-files + path: generated + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - uses: actions/setup-go@v2 + with: + go-version: ${{ matrix.go-version }} + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated + job-name: ${{ env.JOB_NAME }} + build-commands: mvn verify + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "go-with-xml-v2-sample" diff --git a/.github/workflows/test-framework-v2-go.yml b/.github/workflows/test-framework-v2-go.yml new file mode 100644 index 00000000000..1eb2706cddd --- /dev/null +++ b/.github/workflows/test-framework-v2-go.yml @@ -0,0 +1,175 @@ +name: Test Framework V2 Go + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + cp samples/client/petstore/go/pom.xml test-cfg-files + cp samples/client/petstore/go/auth_test.go test-cfg-files + cp samples/client/petstore/go/pet_api_test.go test-cfg-files + cp samples/client/petstore/go/user_api_test.go test-cfg-files + cp samples/client/petstore/go/test.go.bak test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: go + job-name: ${{ env.JOB_NAME }} + 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 + options: " -DpackageName=petstore" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "go-v2-sample" + + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + go-version: ['^1.13.1'] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + - name: Download Go V2 test cfg files + uses: actions/download-artifact@v2 + with: + name: test-cfg-files + path: generated + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - uses: actions/setup-go@v2 + with: + go-version: ${{ matrix.go-version }} + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated + job-name: ${{ env.JOB_NAME }} + build-commands: mvn verify + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "go-v2-sample" diff --git a/.github/workflows/test-framework-v2-html.yml b/.github/workflows/test-framework-v2-html.yml new file mode 100644 index 00000000000..49db15c0e45 --- /dev/null +++ b/.github/workflows/test-framework-v2-html.yml @@ -0,0 +1,90 @@ +name: Test Framework V2 HTML2 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: html + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml + options: "" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "html-v2-sample" diff --git a/.github/workflows/test-framework-v2-html2.yml b/.github/workflows/test-framework-v2-html2.yml new file mode 100644 index 00000000000..2a83c212438 --- /dev/null +++ b/.github/workflows/test-framework-v2-html2.yml @@ -0,0 +1,90 @@ +name: Test Framework V2 HTML + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: html2 + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml + options: "" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "html2-v2-sample" diff --git a/.github/workflows/test-framework-v2-javascript-es6.yml b/.github/workflows/test-framework-v2-javascript-es6.yml new file mode 100644 index 00000000000..3f9bcefe01c --- /dev/null +++ b/.github/workflows/test-framework-v2-javascript-es6.yml @@ -0,0 +1,163 @@ +name: Test Framework V2 Javascript ES6 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: javascript + job-name: ${{ env.JOB_NAME }} + 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 + options: " -DappName=PetstoreClient --additional-properties useES6=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "javascript-es6-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment1q + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download Javascript V2 test cfg files + uses: actions/download-artifact@v2 + with: + name: test-cfg-files + path: generated/${{ env.JOB_NAME }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: npm install + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "javascript-es6-v2-sample" diff --git a/.github/workflows/test-framework-v2-javascript-override-default-config.yml b/.github/workflows/test-framework-v2-javascript-override-default-config.yml new file mode 100644 index 00000000000..cb9e54f23b1 --- /dev/null +++ b/.github/workflows/test-framework-v2-javascript-override-default-config.yml @@ -0,0 +1,172 @@ +name: Test Framework V2 Javascript Override Default Config + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}"0 + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + cp samples/client/petstore/javascript/pom.xml test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: javascript + job-name: ${{ env.JOB_NAME }} + 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 + options: " -DappName=PetstoreClient --invoker-package petstore --api-package handler --model-package mdl --additional-properties sourceFolder=js" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "javascript-override-default-config-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download Javascript V2 test cfg files + uses: actions/download-artifact@v2 + with: + name: test-cfg-files + path: generated/${{ env.JOB_NAME }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: mvn verify + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "javascript-override-default-config-v2-sample" diff --git a/.github/workflows/test-framework-v2-javascript-promise-es6.yml b/.github/workflows/test-framework-v2-javascript-promise-es6.yml new file mode 100644 index 00000000000..f12a578ef42 --- /dev/null +++ b/.github/workflows/test-framework-v2-javascript-promise-es6.yml @@ -0,0 +1,172 @@ +name: Test Framework V2 Javascript Promise ES6 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + cp samples/client/petstore/javascript-promise-es6/pom.xml test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: javascript + job-name: ${{ env.JOB_NAME }} + 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 + options: " -DappName=PetstoreClient --additional-properties usePromises=true,useES6=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "javascript-promise-es6-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download Javascript V2 test cfg files + uses: actions/download-artifact@v2 + with: + name: test-cfg-files + path: generated/${{ env.JOB_NAME }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: mvn verify + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "javascript-promise-es6-v2-sample" diff --git a/.github/workflows/test-framework-v2-javascript-promise.yml b/.github/workflows/test-framework-v2-javascript-promise.yml new file mode 100644 index 00000000000..11632544158 --- /dev/null +++ b/.github/workflows/test-framework-v2-javascript-promise.yml @@ -0,0 +1,172 @@ +name: Test Framework V2 Javascript Promise + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + cp samples/client/petstore/javascript-promise/pom.xml test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: javascript + job-name: ${{ env.JOB_NAME }} + 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 + options: " -DappName=PetstoreClient --additional-properties usePromises=true,useES6=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "javascript-promise-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download Javascript V2 test cfg files + uses: actions/download-artifact@v2 + with: + name: test-cfg-files + path: generated/${{ env.JOB_NAME }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: mvn verify + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "javascript-promise-v2-sample" diff --git a/.github/workflows/test-framework-v2-jaxrs-cxf-client.yml b/.github/workflows/test-framework-v2-jaxrs-cxf-client.yml new file mode 100644 index 00000000000..72066e2aeb8 --- /dev/null +++ b/.github/workflows/test-framework-v2-jaxrs-cxf-client.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Jaxrs CXF Client + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs-cxf-client" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: "" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-cxf-client-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-cxf-client-v2-sample" diff --git a/.github/workflows/test-framework-v2-jaxrs-datelib.yml b/.github/workflows/test-framework-v2-jaxrs-datelib.yml new file mode 100644 index 00000000000..d686ad90d6d --- /dev/null +++ b/.github/workflows/test-framework-v2-jaxrs-datelib.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Jaxrs Datelib + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore-for-samples-servers.yaml" + options: " -DhideGenerationTimestamp=true --additional-properties serializableModel=true,withXml=true,dateLibrary=java8,java8=true,useBeanValidation=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-datelib-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-datelib-v2-sample" diff --git a/.github/workflows/test-framework-v2-jaxrs-jersey1-usetags.yml b/.github/workflows/test-framework-v2-jaxrs-jersey1-usetags.yml new file mode 100644 index 00000000000..cbbffaa2c72 --- /dev/null +++ b/.github/workflows/test-framework-v2-jaxrs-jersey1-usetags.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Jaxrs Jersey 1 Usetags + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore-for-samples-servers.yaml" + options: " -DhideGenerationTimestamp=true,serverPort=8080 --library=jersey1 --artifact-id=swagger-jaxrs-jersey1-useTags --additional-properties useTags=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-jersey1-usetags-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-jersey1-usetags-v2-sample" diff --git a/.github/workflows/test-framework-v2-jaxrs-jersey1.yml b/.github/workflows/test-framework-v2-jaxrs-jersey1.yml new file mode 100644 index 00000000000..954373e4dba --- /dev/null +++ b/.github/workflows/test-framework-v2-jaxrs-jersey1.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Jaxrs Jersey 1 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore-for-samples-servers.yaml" + options: " -DhideGenerationTimestamp=true,serverPort=8080 --library=jersey1 --artifact-id=swagger-jaxrs-jersey1-server" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-jersey1-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-jersey1-v2-sample" diff --git a/.github/workflows/test-framework-v2-jaxrs-resteasy-joda.yml b/.github/workflows/test-framework-v2-jaxrs-resteasy-joda.yml new file mode 100644 index 00000000000..09349afc7f9 --- /dev/null +++ b/.github/workflows/test-framework-v2-jaxrs-resteasy-joda.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Jaxrs Resteasy Joda + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs-resteasy" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true --additional-properties dateLibrary=joda" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-resteasy-joda-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-resteasy-joda-v2-sample" diff --git a/.github/workflows/test-framework-v2-jaxrs-resteasy-server-java8.yml b/.github/workflows/test-framework-v2-jaxrs-resteasy-server-java8.yml new file mode 100644 index 00000000000..0be91933f65 --- /dev/null +++ b/.github/workflows/test-framework-v2-jaxrs-resteasy-server-java8.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Jaxrs Resteasy Server Java8 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs-resteasy" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true --additional-properties dateLibrary=java8" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-resteasy-server-java8-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-resteasy-server-java8-v2-sample" diff --git a/.github/workflows/test-framework-v2-jaxrs-resteasy-server.yml b/.github/workflows/test-framework-v2-jaxrs-resteasy-server.yml new file mode 100644 index 00000000000..8b212a0a25d --- /dev/null +++ b/.github/workflows/test-framework-v2-jaxrs-resteasy-server.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Jaxrs Resteasy Server + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs-resteasy" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-resteasy-server-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-resteasy-server-v2-sample" diff --git a/.github/workflows/test-framework-v2-jaxrs-usetags.yml b/.github/workflows/test-framework-v2-jaxrs-usetags.yml new file mode 100644 index 00000000000..27975b7942e --- /dev/null +++ b/.github/workflows/test-framework-v2-jaxrs-usetags.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Jaxrs Usetags + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore-for-samples-servers.yaml" + options: " -DhideGenerationTimestamp=true,serverPort=8080 --artifact-id=swagger-jaxrs-jersey2-useTags --additional-properties useTags=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-usetags-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-usetags-v2-sample" diff --git a/.github/workflows/test-framework-v2-jaxrs.yml b/.github/workflows/test-framework-v2-jaxrs.yml new file mode 100644 index 00000000000..522f5c35139 --- /dev/null +++ b/.github/workflows/test-framework-v2-jaxrs.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Jaxrs + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore-for-samples-servers.yaml" + options: " -DhideGenerationTimestamp=true,serverPort=8080" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-v2-sample" diff --git a/.github/workflows/test-framework-v2-kotlin-string.yml b/.github/workflows/test-framework-v2-kotlin-string.yml new file mode 100644 index 00000000000..ceb55166f13 --- /dev/null +++ b/.github/workflows/test-framework-v2-kotlin-string.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Kotlin String + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "kotlin" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " --artifact-id kotlin-petstore-string -DdateLibrary=string" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "kotlin-string-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "gradle build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "kotlin-string-v2-sample" diff --git a/.github/workflows/test-framework-v2-kotlin-threetenbp.yml b/.github/workflows/test-framework-v2-kotlin-threetenbp.yml new file mode 100644 index 00000000000..14400e37b96 --- /dev/null +++ b/.github/workflows/test-framework-v2-kotlin-threetenbp.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Kotlin Threetenbp + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "kotlin" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " --artifact-id kotlin-petstore-client -DdateLibrary=threetenbp" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "kotlin-threetenbp-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "gradle build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "kotlin-threetenbp-v2-sample" diff --git a/.github/workflows/test-framework-v2-kotlin.yml b/.github/workflows/test-framework-v2-kotlin.yml new file mode 100644 index 00000000000..fb445be09d3 --- /dev/null +++ b/.github/workflows/test-framework-v2-kotlin.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Kotlin + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "kotlin" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " --artifact-id kotlin-petstore-client -DdateLibrary=java8" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "kotlin-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "gradle build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "kotlin-v2-sample" diff --git a/.github/workflows/test-framework-v2-node-js-google-cloud.yml b/.github/workflows/test-framework-v2-node-js-google-cloud.yml new file mode 100644 index 00000000000..548df0b99cf --- /dev/null +++ b/.github/workflows/test-framework-v2-node-js-google-cloud.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Node JS Google Cloud + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "nodejs-server" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " --additional-properties=googleCloudFunctions=true -Dservice" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "node-js-google-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "node-js-google-v2-sample" diff --git a/.github/workflows/test-framework-v2-node-js.yml b/.github/workflows/test-framework-v2-node-js.yml new file mode 100644 index 00000000000..19f6ad819fc --- /dev/null +++ b/.github/workflows/test-framework-v2-node-js.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Node Js + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "nodejs-server" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " -Dservice" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "node-js-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "node-js-v2-sample" diff --git a/.github/workflows/test-framework-v2-python-flask.yml b/.github/workflows/test-framework-v2-python-flask.yml new file mode 100644 index 00000000000..4bab555ee78 --- /dev/null +++ b/.github/workflows/test-framework-v2-python-flask.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Python Flask + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "python-flask" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " -Dservice" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "python-flask-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + python-version: [3.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "python -m swagger_server &" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "python-flask-v2-sample" diff --git a/.github/workflows/test-framework-v2-python-tornado.yml b/.github/workflows/test-framework-v2-python-tornado.yml new file mode 100644 index 00000000000..308a1018c8c --- /dev/null +++ b/.github/workflows/test-framework-v2-python-tornado.yml @@ -0,0 +1,169 @@ +name: Test Framework V2 Python Tornado + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING latest" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + ls modules/swagger-codegen-cli/target/ + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir python-v2-sample-test-config-files + cp samples/client/petstore/python-tornado/tests -r python-v2-sample-test-config-files + cp samples/client/petstore/python-tornado/Makefile python-v2-sample-test-config-files + cp samples/client/petstore/python-tornado/pom.xml python-v2-sample-test-config-files + cp samples/client/petstore/python-tornado/setup.py python-v2-sample-test-config-files + cp samples/client/petstore/python-tornado/test_python2_and_3.sh python-v2-sample-test-config-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload python test cfg files + uses: actions/upload-artifact@v2 + with: + name: python-v2-sample-test-config-files + path: python-v2-sample-test-config-files + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: python + job-name: ${{ env.JOB_NAME }} + 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 + options: " -DpackageName=petstore_api --library tornado" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "python-tornado-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + python-version: [3.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + - name: Download Python V2 test cfg files + uses: actions/download-artifact@v2 + with: + name: python-v2-sample-test-config-files + path: generated/${{ env.JOB_NAME }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "python setup.py install__&&__pip install tox__&&__make test-all" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "python-tornado-v2-sample" diff --git a/.github/workflows/test-framework-v2-spring-cloud-feign.yml b/.github/workflows/test-framework-v2-spring-cloud-feign.yml new file mode 100644 index 00000000000..1d57be51f71 --- /dev/null +++ b/.github/workflows/test-framework-v2-spring-cloud-feign.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Spring Cloud Feign + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml" + options: " --library spring-cloud -DhideGenerationTimestamp=true,responseWrapper=HystrixCommand" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-cloud-feign-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-cloud-feign-v2-sample" diff --git a/.github/workflows/test-framework-v2-spring-delegate-java8.yml b/.github/workflows/test-framework-v2-spring-delegate-java8.yml new file mode 100644 index 00000000000..bf463c49cf8 --- /dev/null +++ b/.github/workflows/test-framework-v2-spring-delegate-java8.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Spring Delegate Java 8 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + 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" + options: " -DdelegatePattern=true,hideGenerationTimestamp=true,java8=true -DapiTests=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-delegate-java8-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-delegate-java8-v2-sample" diff --git a/.github/workflows/test-framework-v2-spring-delegate.yml b/.github/workflows/test-framework-v2-spring-delegate.yml new file mode 100644 index 00000000000..98535d25f38 --- /dev/null +++ b/.github/workflows/test-framework-v2-spring-delegate.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Spring Delegate + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + 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" + options: " -DdelegatePattern=true,hideGenerationTimestamp=true -DapiTests=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-delegate-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-delegate-v2-sample" diff --git a/.github/workflows/test-framework-v2-spring-mvc-java8-async-server.yml b/.github/workflows/test-framework-v2-spring-mvc-java8-async-server.yml new file mode 100644 index 00000000000..21a585311f6 --- /dev/null +++ b/.github/workflows/test-framework-v2-spring-mvc-java8-async-server.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Spring MVC Java8 Async Server + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + 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" + options: " --library spring-mvc -DhideGenerationTimestamp=true,java8=true,async=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-mvc-java8-async-server-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-mvc-java8-async-server-v2-sample" diff --git a/.github/workflows/test-framework-v2-spring-mvc-java8-localdatetime.yml b/.github/workflows/test-framework-v2-spring-mvc-java8-localdatetime.yml new file mode 100644 index 00000000000..afffe2ce66f --- /dev/null +++ b/.github/workflows/test-framework-v2-spring-mvc-java8-localdatetime.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Spring MVC Java8 Async Server + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + 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" + options: " --library spring-mvc -DhideGenerationTimestamp=true,dateLibrary=java8-localdatetime" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-mvc-java8-async-server-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-mvc-java8-async-server-v2-sample" diff --git a/.github/workflows/test-framework-v2-spring-mvc-server.yml b/.github/workflows/test-framework-v2-spring-mvc-server.yml new file mode 100644 index 00000000000..90941fd60d0 --- /dev/null +++ b/.github/workflows/test-framework-v2-spring-mvc-server.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Spring MVC Server + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + 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" + options: " --library spring-mvc -DhideGenerationTimestamp=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-mvc-server-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-mvc-server-v2-sample" diff --git a/.github/workflows/test-framework-v2-spring-stubs.yml b/.github/workflows/test-framework-v2-spring-stubs.yml new file mode 100644 index 00000000000..2f98fcf02d7 --- /dev/null +++ b/.github/workflows/test-framework-v2-spring-stubs.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Spring Stubs + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + 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" + options: " --library spring-mvc -DhideGenerationTimestamp=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-stubs-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-stubs-v2-sample" diff --git a/.github/workflows/test-framework-v2-springboot-beanvalidation.yml b/.github/workflows/test-framework-v2-springboot-beanvalidation.yml new file mode 100644 index 00000000000..dc5a3349b51 --- /dev/null +++ b/.github/workflows/test-framework-v2-springboot-beanvalidation.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Springboot Beanvalidation + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + 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" + options: " -DhideGenerationTimestamp=true -DapiTests=false,useBeanValidation=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "springboot-beanvalidation-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "springboot-beanvalidation-v2-sample" diff --git a/.github/workflows/test-framework-v2-springboot-implicitHeader.yml b/.github/workflows/test-framework-v2-springboot-implicitHeader.yml new file mode 100644 index 00000000000..bb7dfafd7b3 --- /dev/null +++ b/.github/workflows/test-framework-v2-springboot-implicitHeader.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Springboot Implicit Header + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + 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" + options: " -DhideGenerationTimestamp=true -DapiTests=false,implicitHeaders=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "springboot-implicit-headers-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "springboot-implicit-headers-v2-sample" diff --git a/.github/workflows/test-framework-v2-springboot-server.yml b/.github/workflows/test-framework-v2-springboot-server.yml new file mode 100644 index 00000000000..d524f78ec4f --- /dev/null +++ b/.github/workflows/test-framework-v2-springboot-server.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Springboot Server + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + 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" + options: " -DhideGenerationTimestamp=true -DapiTests=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "springboot-server-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "springboot-server-v2-sample" diff --git a/.github/workflows/test-framework-v2-springboot-useOptional.yml b/.github/workflows/test-framework-v2-springboot-useOptional.yml new file mode 100644 index 00000000000..c051b6c3b03 --- /dev/null +++ b/.github/workflows/test-framework-v2-springboot-useOptional.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 Springboot UseOptional + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + 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" + options: " -DhideGenerationTimestamp=true -DapiTests=false,useOptional=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "springboot-use-optional-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "springboot-use-optional-v2-sample" diff --git a/.github/workflows/test-framework-v2-typescript-fetch-es6.yml b/.github/workflows/test-framework-v2-typescript-fetch-es6.yml new file mode 100644 index 00000000000..2485bc4aaba --- /dev/null +++ b/.github/workflows/test-framework-v2-typescript-fetch-es6.yml @@ -0,0 +1,172 @@ +name: Test Framework V2 Typescript Fetch ES6 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + cp samples/client/petstore/typescript-fetch/builds/es6-target/pom.xml test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-fetch + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml + options: " --additional-properties npmName=@swagger/typescript-fetch-petstore,npmVersion=1.0.0,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,supportsES6=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-fetch-es6-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download Javascript V2 test cfg files + uses: actions/download-artifact@v2 + with: + name: test-cfg-files + path: generated/${{ env.JOB_NAME }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: mvn verify + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-fetch-es6-v2-sample" diff --git a/.github/workflows/test-framework-v2-typescript-fetch-interfaces.yml b/.github/workflows/test-framework-v2-typescript-fetch-interfaces.yml new file mode 100644 index 00000000000..57ee64ba3d5 --- /dev/null +++ b/.github/workflows/test-framework-v2-typescript-fetch-interfaces.yml @@ -0,0 +1,161 @@ +name: Test Framework V2 Typescript Fetch Interfaces + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-fetch + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml + options: " -DwithInterfaces=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-fetch-interfaces-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: npm install + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-interfaces-fetch-v2-sample" diff --git a/.github/workflows/test-framework-v2-typescript-fetch-npm.yml b/.github/workflows/test-framework-v2-typescript-fetch-npm.yml new file mode 100644 index 00000000000..4c006bfa5d6 --- /dev/null +++ b/.github/workflows/test-framework-v2-typescript-fetch-npm.yml @@ -0,0 +1,171 @@ +name: Test Framework V2 Typescript Fetch NPM + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + cp samples/client/petstore/typescript-fetch/builds/with-npm-version/pom.xml test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-fetch + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml + options: "" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-fetch-npm-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download Javascript V2 test cfg files + uses: actions/download-artifact@v2 + with: + name: test-cfg-files + path: generated/${{ env.JOB_NAME }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: mvn verify + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "typescript-fetch-npm-v2-sample" diff --git a/.github/workflows/test-framework-v2-typescript-fetch.yml b/.github/workflows/test-framework-v2-typescript-fetch.yml new file mode 100644 index 00000000000..244fdcf2aed --- /dev/null +++ b/.github/workflows/test-framework-v2-typescript-fetch.yml @@ -0,0 +1,172 @@ +name: Test Framework V2 Typescript Fetch + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + cp samples/client/petstore/typescript-fetch/builds/default/pom.xml test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-fetch + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml + options: "" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-fetch-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download Javascript V2 test cfg files + uses: actions/download-artifact@v2 + with: + name: test-cfg-files + path: generated/${{ env.JOB_NAME }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: mvn verify + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-fetch-v2-sample" diff --git a/.github/workflows/test-framework-v2-typescript-node.yml b/.github/workflows/test-framework-v2-typescript-node.yml new file mode 100644 index 00000000000..6bb761cb217 --- /dev/null +++ b/.github/workflows/test-framework-v2-typescript-node.yml @@ -0,0 +1,172 @@ +name: Test Framework V2 Typescript Node + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + cp samples/client/petstore/typescript-node/npm/pom.xml test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-fetch + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml + options: " --additional-properties npmName=\"@swagger/angular2-typescript-petstore\" npmVersion=\"0.0.1\" npmRepository=\"https://skimdb.npmjs.com/registry\" snapshot=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-node-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download Javascript V2 test cfg files + uses: actions/download-artifact@v2 + with: + name: test-cfg-files + path: generated/${{ env.JOB_NAME }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: mvn verify + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-node-v2-sample" diff --git a/.github/workflows/test-framework-v3-aspnetcore-interface-controller.yml b/.github/workflows/test-framework-v3-aspnetcore-interface-controller.yml new file mode 100644 index 00000000000..651164c23c5 --- /dev/null +++ b/.github/workflows/test-framework-v3-aspnetcore-interface-controller.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Aspnetcore Interface Controller + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "aspnetcore" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties interface-controller=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "aspnetcore-interface-controller-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "aspnetcore-interface-controller-v3-sample" diff --git a/.github/workflows/test-framework-v3-aspnetcore-interface-only.yml b/.github/workflows/test-framework-v3-aspnetcore-interface-only.yml new file mode 100644 index 00000000000..242aff06cb6 --- /dev/null +++ b/.github/workflows/test-framework-v3-aspnetcore-interface-only.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Aspnetcore Interface Only + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "aspnetcore" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties interface-only=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "aspnetcore-interface-only-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "aspnetcore-interface-only-v3-sample" diff --git a/.github/workflows/test-framework-v3-aspnetcore-v22-interface-controller.yml b/.github/workflows/test-framework-v3-aspnetcore-v22-interface-controller.yml new file mode 100644 index 00000000000..cc2b2cd542a --- /dev/null +++ b/.github/workflows/test-framework-v3-aspnetcore-v22-interface-controller.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Aspnetcore v22 Interface Controller + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "aspnetcore" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties interface-controller=true --additional-properties aspnetCoreVersion=2.2" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "aspnetcore-v22-interface-controller-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "aspnetcore-v22-interface-controller-v3-sample" diff --git a/.github/workflows/test-framework-v3-aspnetcore-v22-interface-only.yml b/.github/workflows/test-framework-v3-aspnetcore-v22-interface-only.yml new file mode 100644 index 00000000000..780f947b1f5 --- /dev/null +++ b/.github/workflows/test-framework-v3-aspnetcore-v22-interface-only.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Aspnetcore v22 Interface Only + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "3aspnetcore" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties interface-only=true --additional-properties aspnetCoreVersion=2.2" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB ][]_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "aspnetcore-v22-interface-only-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "aspnetcore-v22-interface-only-v3-sample" diff --git a/.github/workflows/test-framework-v3-aspnetcore-v22.yml b/.github/workflows/test-framework-v3-aspnetcore-v22.yml new file mode 100644 index 00000000000..a4cfe701ee7 --- /dev/null +++ b/.github/workflows/test-framework-v3-aspnetcore-v22.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Aspnetcore v22 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "aspnetcore" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5} --additional-properties aspnetCoreVersion=2.2" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "aspnetcore-v22-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "aspnetcore-v22-v3-sample" diff --git a/.github/workflows/test-framework-v3-aspnetcore.yml b/.github/workflows/test-framework-v3-aspnetcore.yml new file mode 100644 index 00000000000..a4e2be4add0 --- /dev/null +++ b/.github/workflows/test-framework-v3-aspnetcore.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Aspnetcore + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "aspnetcore" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --additional-properties packageGuid={3C799344-F285-4669-8FD5-7ED9B795D5C5}" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "aspnetcore-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "aspnetcore-v3-sample" diff --git a/.github/workflows/test-framework-v3-csharp-dotnet2.yml b/.github/workflows/test-framework-v3-csharp-dotnet2.yml new file mode 100644 index 00000000000..a55c33856d6 --- /dev/null +++ b/.github/workflows/test-framework-v3-csharp-dotnet2.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 CSharp Dotnet2 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp-dotnet2" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --additional-properties hideGenerationTimestamp=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-dotnet2-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./compile-mono.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-dotnet2-v3-sample" diff --git a/.github/workflows/test-framework-v3-csharp-net-standard.yml b/.github/workflows/test-framework-v3-csharp-net-standard.yml new file mode 100644 index 00000000000..941469ea17d --- /dev/null +++ b/.github/workflows/test-framework-v3-csharp-net-standard.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 CSharp Net Standard + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " --additional-properties packageGuid={321C8C3F-0156-40C1-AE42-D59761FB9B6C} -DtargetFramework=v5.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-standard-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-standard-v3-sample" diff --git a/.github/workflows/test-framework-v3-csharp-net35.yml b/.github/workflows/test-framework-v3-csharp-net35.yml new file mode 100644 index 00000000000..02f9eeb3d3f --- /dev/null +++ b/.github/workflows/test-framework-v3-csharp-net35.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 CSharp Net v3.5 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " --additional-properties packageGuid={321C8C3F-0156-40C1-AE42-D59761FB9B6C} -DtargetFramework=v3.5" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-v35-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-v35-v3-sample" diff --git a/.github/workflows/test-framework-v3-csharp-net40.yml b/.github/workflows/test-framework-v3-csharp-net40.yml new file mode 100644 index 00000000000..4d30b66f831 --- /dev/null +++ b/.github/workflows/test-framework-v3-csharp-net40.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 CSharp Net v4.0 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " --additional-properties packageGuid={321C8C3F-0156-40C1-AE42-D59761FB9B6C} -DtargetFramework=v4.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-v40-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-v40-v3-sample" diff --git a/.github/workflows/test-framework-v3-csharp-netcore.yml b/.github/workflows/test-framework-v3-csharp-netcore.yml new file mode 100644 index 00000000000..43caa69bcd2 --- /dev/null +++ b/.github/workflows/test-framework-v3-csharp-netcore.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 CSharp Net Core + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp" + job-name: ${{ env.JOB_NAME }} + 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" + options: " --additional-properties packageGuid={321C8C3F-0156-40C1-AE42-D59761FB9B6C},netCoreProjectFile=true -DtargetFramework=v5.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-net-core-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-net-core-v2-sample" diff --git a/.github/workflows/test-framework-v3-csharp-property-changed.yml b/.github/workflows/test-framework-v3-csharp-property-changed.yml new file mode 100644 index 00000000000..a5afed6fe43 --- /dev/null +++ b/.github/workflows/test-framework-v3-csharp-property-changed.yml @@ -0,0 +1,151 @@ +name: Test Framework V2 CSharp Net Property Changed + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp" + job-name: ${{ env.JOB_NAME }} + 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" + options: " --additional-properties packageGuid={321C8C3F-0156-40C1-AE42-D59761FB9B6C},generatePropertyChanged=true -DtargetFramework=v5.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-property-changed-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-property-changed-v2-sample" diff --git a/.github/workflows/test-framework-v3-csharp.yml b/.github/workflows/test-framework-v3-csharp.yml new file mode 100644 index 00000000000..b84ce08dc33 --- /dev/null +++ b/.github/workflows/test-framework-v3-csharp.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 CSharp + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "csharp" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " --additional-properties packageGuid={321C8C3F-0156-40C1-AE42-D59761FB9B6C}" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "csharp-v2-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + dotnet-version: [3.1.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up DotNet 3.1.x + uses: actions/setup-dotnet@v1 + with: + dotnet-version: ${{ matrix.dotnet-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "sh ./build.sh" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "csharp-v2-sample" diff --git a/.github/workflows/test-framework-v3-dart-browser-client.yml b/.github/workflows/test-framework-v3-dart-browser-client.yml new file mode 100644 index 00000000000..881f88dcf35 --- /dev/null +++ b/.github/workflows/test-framework-v3-dart-browser-client.yml @@ -0,0 +1,141 @@ +name: Test Framework V3 Dart Browser Client + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "dart" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true -DbrowserClient=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "dart-browser-client-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - uses: dart-lang/setup-dart@v1 + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: dart pub get + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "dart-browser-client-v3-sample" diff --git a/.github/workflows/test-framework-v3-dart.yml b/.github/workflows/test-framework-v3-dart.yml new file mode 100644 index 00000000000..47a8b74c1f3 --- /dev/null +++ b/.github/workflows/test-framework-v3-dart.yml @@ -0,0 +1,141 @@ +name: Test Framework V3 Dart + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "dart" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true -DbrowserClient=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "dart-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - uses: dart-lang/setup-dart@v1 + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: dart pub get + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "dart-v3-sample" diff --git a/.github/workflows/test-framework-v3-dynamic-html.yml b/.github/workflows/test-framework-v3-dynamic-html.yml new file mode 100644 index 00000000000..6c02c3de51b --- /dev/null +++ b/.github/workflows/test-framework-v3-dynamic-html.yml @@ -0,0 +1,92 @@ +name: Test Framework V3 HTML2 + +on: + # execute on demand + workflow_dispatch: + branches: ["3.0.0"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING 3.0.0" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: dynamic-html + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml + options: "" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "html2-v3-sample" diff --git a/.github/workflows/test-framework-v3-html.yml b/.github/workflows/test-framework-v3-html.yml new file mode 100644 index 00000000000..e5fc56b1d35 --- /dev/null +++ b/.github/workflows/test-framework-v3-html.yml @@ -0,0 +1,92 @@ +name: Test Framework V3 HTML2 + +on: + # execute on demand + workflow_dispatch: + branches: ["3.0.0"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING 3.0.0" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: html + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml + options: "" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "html-v3-sample" diff --git a/.github/workflows/test-framework-v3-html2.yml b/.github/workflows/test-framework-v3-html2.yml new file mode 100644 index 00000000000..e249c256158 --- /dev/null +++ b/.github/workflows/test-framework-v3-html2.yml @@ -0,0 +1,92 @@ +name: Test Framework V3 HTML + +on: + # execute on demand + workflow_dispatch: + branches: ["3.0.0"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING 3.0.0" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: html2 + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml + options: "" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "html2-v3-sample" diff --git a/.github/workflows/test-framework-v3-javascript-es6.yml b/.github/workflows/test-framework-v3-javascript-es6.yml new file mode 100644 index 00000000000..76d0f4164ef --- /dev/null +++ b/.github/workflows/test-framework-v3-javascript-es6.yml @@ -0,0 +1,156 @@ +name: Test Framework V3 Javascript ES6 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: javascript + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DappName=PetstoreClient --additional-properties useES6=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "javascript-es6-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment1q + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: npm install__&&__npm run test + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "javascript-es6-v3-sample" diff --git a/.github/workflows/test-framework-v3-javascript-override-default-config.yml b/.github/workflows/test-framework-v3-javascript-override-default-config.yml new file mode 100644 index 00000000000..c574c9f80ee --- /dev/null +++ b/.github/workflows/test-framework-v3-javascript-override-default-config.yml @@ -0,0 +1,157 @@ +name: Test Framework V3 Javascript Override Default Config + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}"0 + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: javascript + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DappName=PetstoreClient --invoker-package petstore --api-package handler --model-package mdl --additional-properties sourceFolder=js" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "javascript-override-default-config-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: npm install__&&__npm run test + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "javascript-override-default-config-v3-sample" diff --git a/.github/workflows/test-framework-v3-javascript-promise-es6.yml b/.github/workflows/test-framework-v3-javascript-promise-es6.yml new file mode 100644 index 00000000000..1356819b695 --- /dev/null +++ b/.github/workflows/test-framework-v3-javascript-promise-es6.yml @@ -0,0 +1,157 @@ +name: Test Framework V3 Javascript Promise ES6 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: javascript + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DappName=PetstoreClient --additional-properties usePromises=true,useES6=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "javascript-promise-es6-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: npm install__&&__npm run test + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "javascript-promise-es6-v3-sample" diff --git a/.github/workflows/test-framework-v3-javascript-promise.yml b/.github/workflows/test-framework-v3-javascript-promise.yml new file mode 100644 index 00000000000..9d1927eca53 --- /dev/null +++ b/.github/workflows/test-framework-v3-javascript-promise.yml @@ -0,0 +1,156 @@ +name: Test Framework V3 Javascript Promise + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: javascript + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DappName=PetstoreClient --additional-properties usePromises=true,useES6=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "javascript-promise-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: npm install__&&__npm run test + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "javascript-promise-v3-sample" diff --git a/.github/workflows/test-framework-v3-javascript.yml b/.github/workflows/test-framework-v3-javascript.yml new file mode 100644 index 00000000000..2ea8b95c3f4 --- /dev/null +++ b/.github/workflows/test-framework-v3-javascript.yml @@ -0,0 +1,155 @@ +name: Test Framework V3 Javascript + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: javascript + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DappName=PetstoreClient --additional-properties useES6=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "javascript-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: npm install__&&__npm run test + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "javascript-v3-sample" diff --git a/.github/workflows/test-framework-v3-jaxrs-cxf-client.yml b/.github/workflows/test-framework-v3-jaxrs-cxf-client.yml new file mode 100644 index 00000000000..a4969e319cc --- /dev/null +++ b/.github/workflows/test-framework-v3-jaxrs-cxf-client.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Jaxrs CXF Client + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs-cxf-client" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: "" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-cxf-client-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-cxf-client-v3-sample" diff --git a/.github/workflows/test-framework-v3-jaxrs-datelib.yml b/.github/workflows/test-framework-v3-jaxrs-datelib.yml new file mode 100644 index 00000000000..6106b72681b --- /dev/null +++ b/.github/workflows/test-framework-v3-jaxrs-datelib.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Jaxrs Datelib + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs-jersey" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true --additional-properties serializableModel=true,withXml=true,dateLibrary=java8,java8=true,useBeanValidation=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-datelib-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-datelib-v3-sample" diff --git a/.github/workflows/test-framework-v3-jaxrs-jersey1-usetags.yml b/.github/workflows/test-framework-v3-jaxrs-jersey1-usetags.yml new file mode 100644 index 00000000000..e35e3451e1c --- /dev/null +++ b/.github/workflows/test-framework-v3-jaxrs-jersey1-usetags.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Jaxrs Jersey 1 Usetags + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs-jersey" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true,serverPort=8080 --library=jersey1 --artifact-id=swagger-jaxrs-jersey1-useTags --additional-properties useTags=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-jersey1-usetags-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-jersey1-usetags-v3-sample" diff --git a/.github/workflows/test-framework-v3-jaxrs-jersey1.yml b/.github/workflows/test-framework-v3-jaxrs-jersey1.yml new file mode 100644 index 00000000000..079d061dd84 --- /dev/null +++ b/.github/workflows/test-framework-v3-jaxrs-jersey1.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Jaxrs Jersey 1 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs-jersey" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true,serverPort=8080 --library=jersey1 --artifact-id=swagger-jaxrs-jersey1-server" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-jersey1-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-jersey1-v3-sample" diff --git a/.github/workflows/test-framework-v3-jaxrs-resteasy-joda.yml b/.github/workflows/test-framework-v3-jaxrs-resteasy-joda.yml new file mode 100644 index 00000000000..e16d617bdfe --- /dev/null +++ b/.github/workflows/test-framework-v3-jaxrs-resteasy-joda.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Jaxrs Resteasy Joda + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs-resteasy" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true --additional-properties dateLibrary=joda" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-resteasy-joda-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-resteasy-joda-v3-sample" diff --git a/.github/workflows/test-framework-v3-jaxrs-resteasy-server-java8.yml b/.github/workflows/test-framework-v3-jaxrs-resteasy-server-java8.yml new file mode 100644 index 00000000000..4d0986c2aa3 --- /dev/null +++ b/.github/workflows/test-framework-v3-jaxrs-resteasy-server-java8.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Jaxrs Resteasy Server Java8 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs-resteasy" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true --additional-properties dateLibrary=java8" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-resteasy-server-java8-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-resteasy-server-java8-v3-sample" diff --git a/.github/workflows/test-framework-v3-jaxrs-resteasy-server.yml b/.github/workflows/test-framework-v3-jaxrs-resteasy-server.yml new file mode 100644 index 00000000000..0ed35ff9c1c --- /dev/null +++ b/.github/workflows/test-framework-v3-jaxrs-resteasy-server.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Jaxrs Resteasy Server + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs-resteasy" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-resteasy-server-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-resteasy-server-v3-sample" diff --git a/.github/workflows/test-framework-v3-jaxrs-usetags.yml b/.github/workflows/test-framework-v3-jaxrs-usetags.yml new file mode 100644 index 00000000000..43a77157563 --- /dev/null +++ b/.github/workflows/test-framework-v3-jaxrs-usetags.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Jaxrs Usetags + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "jaxrs-jersey" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " -DhideGenerationTimestamp=true,serverPort=8080 --artifact-id=swagger-jaxrs-jersey2-useTags --additional-properties useTags=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "jaxrs-usetags-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "jaxrs-usetags-v3-sample" diff --git a/.github/workflows/test-framework-v3-kotlin-string.yml b/.github/workflows/test-framework-v3-kotlin-string.yml new file mode 100644 index 00000000000..f2268d87864 --- /dev/null +++ b/.github/workflows/test-framework-v3-kotlin-string.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Kotlin String + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "kotlin-client" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --artifact-id kotlin-petstore-string -DdateLibrary=string" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "kotlin-string-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "gradle build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "kotlin-string-v3-sample" diff --git a/.github/workflows/test-framework-v3-kotlin-threetenbp.yml b/.github/workflows/test-framework-v3-kotlin-threetenbp.yml new file mode 100644 index 00000000000..e0d92b3414f --- /dev/null +++ b/.github/workflows/test-framework-v3-kotlin-threetenbp.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Kotlin Threetenbp + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "kotlin-client" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --artifact-id kotlin-petstore-client -DdateLibrary=threetenbp" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "kotlin-threetenbp-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "gradle build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "kotlin-threetenbp-v3-sample" diff --git a/.github/workflows/test-framework-v3-kotlin.yml b/.github/workflows/test-framework-v3-kotlin.yml new file mode 100644 index 00000000000..323c49e9db0 --- /dev/null +++ b/.github/workflows/test-framework-v3-kotlin.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Kotlin + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "kotlin-client" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --artifact-id kotlin-petstore-client -DdateLibrary=java8" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "kotlin-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "gradle build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "kotlin-v3-sample" diff --git a/.github/workflows/test-framework-v3-node-js-google-cloud.yml b/.github/workflows/test-framework-v3-node-js-google-cloud.yml new file mode 100644 index 00000000000..2a39df93f35 --- /dev/null +++ b/.github/workflows/test-framework-v3-node-js-google-cloud.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Node JS Google Cloud + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "nodejs-server" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --additional-properties=googleCloudFunctions=true -Dservice" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "node-js-google-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "node-js-google-v3-sample" diff --git a/.github/workflows/test-framework-v3-node-js.yml b/.github/workflows/test-framework-v3-node-js.yml new file mode 100644 index 00000000000..2fce34116fb --- /dev/null +++ b/.github/workflows/test-framework-v3-node-js.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Node Js + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "nodejs-server" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " -Dservice" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "node-js-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "node-js-v3-sample" diff --git a/.github/workflows/test-framework-v3-php.yml b/.github/workflows/test-framework-v3-php.yml new file mode 100644 index 00000000000..a72e05e678a --- /dev/null +++ b/.github/workflows/test-framework-v3-php.yml @@ -0,0 +1,177 @@ +name: Test Framework V2 PHP + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + + mkdir test-cfg-files + cp -r samples/client/petstore/php/SwaggerClient-php/tests test-cfg-files + cp samples/client/petstore/php/SwaggerClient-php/autoload.php test-cfg-files + cp samples/client/petstore/php/SwaggerClient-php/pom.xml test-cfg-files + cp samples/client/petstore/php/SwaggerClient-php/phpcs-generated-code.xml test-cfg-files + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: php + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " --additional-properties composerVendorName=swagger,composerProjectName=swagger_codegen" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "php-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download PHP V2 test cfg files + uses: actions/download-artifact@v2 + with: + name: test-cfg-files + path: generated/SwaggerClient-php/${{ env.JOB_NAME }} + - name: Setup PHP with composer v2 + uses: shivammathur/setup-php@v2 + with: + php-version: '7.4' + tools: composer:v2 + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }}/SwaggerClient-php + job-name: ${{ env.JOB_NAME }} + build-commands: "composer install__&&__./vendor/bin/phpunit test" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "php-v3-sample" diff --git a/.github/workflows/test-framework-v3-python-asyncio.yml b/.github/workflows/test-framework-v3-python-asyncio.yml new file mode 100644 index 00000000000..8679dd085c3 --- /dev/null +++ b/.github/workflows/test-framework-v3-python-asyncio.yml @@ -0,0 +1,159 @@ +name: Test Framework V3 Python Asyncio + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING latest" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + ls modules/swagger-codegen-cli/target/ + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload python test cfg files + uses: actions/upload-artifact@v2 + with: + name: python-v2-sample-test-config-files + path: python-v2-sample-test-config-files + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: python + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DpackageName=petstore_api --library asyncio" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "python-asyncio-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + python-version: [3.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "python3 setup.py install --user__&&__pip3 install nose2 --user__&&__python3 -m nose2" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "python-asyncio-v3-sample" diff --git a/.github/workflows/test-framework-v3-python-flask.yml b/.github/workflows/test-framework-v3-python-flask.yml new file mode 100644 index 00000000000..cdb92600f2b --- /dev/null +++ b/.github/workflows/test-framework-v3-python-flask.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Python Flask + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "python-flask" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " -Dservice" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "python-flask-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + python-version: [3.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "pip3 install -r requirements.txt__&&__python3 -m swagger_server &" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "python-flask-v3-sample" diff --git a/.github/workflows/test-framework-v3-python-tornado.yml b/.github/workflows/test-framework-v3-python-tornado.yml new file mode 100644 index 00000000000..81459c6a024 --- /dev/null +++ b/.github/workflows/test-framework-v3-python-tornado.yml @@ -0,0 +1,159 @@ +name: Test Framework V3 Python Tornado + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING latest" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + ls modules/swagger-codegen-cli/target/ + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload python test cfg files + uses: actions/upload-artifact@v2 + with: + name: python-v2-sample-test-config-files + path: python-v2-sample-test-config-files + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: python + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DpackageName=petstore_api --library tornado" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "python-tornado-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + python-version: [3.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "python3 setup.py install --user__&&__pip3 install nose2 --user__&&__python3 -m nose2" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "python-tornado-v3-sample" diff --git a/.github/workflows/test-framework-v3-python.yml b/.github/workflows/test-framework-v3-python.yml new file mode 100644 index 00000000000..73972ebebd3 --- /dev/null +++ b/.github/workflows/test-framework-v3-python.yml @@ -0,0 +1,159 @@ +name: Test Framework V3 Python + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING latest" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + ls modules/swagger-codegen-cli/target/ + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload python test cfg files + uses: actions/upload-artifact@v2 + with: + name: python-v2-sample-test-config-files + path: python-v2-sample-test-config-files + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: python + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DpackageName=petstore_api" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "python-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + python-version: [3.x] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Setup python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "python3 setup.py install --user__&&__pip3 install nose2 --user__&&__python3 -m nose2" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "python-v3-sample" diff --git a/.github/workflows/test-framework-v3-spring-cloud-feign.yml b/.github/workflows/test-framework-v3-spring-cloud-feign.yml new file mode 100644 index 00000000000..ddb59f9c000 --- /dev/null +++ b/.github/workflows/test-framework-v3-spring-cloud-feign.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Spring Cloud Feign + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --library spring-cloud -DhideGenerationTimestamp=true,responseWrapper=HystrixCommand" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-cloud-feign-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-cloud-feign-v3-sample" diff --git a/.github/workflows/test-framework-v3-spring-delegate-java8.yml b/.github/workflows/test-framework-v3-spring-delegate-java8.yml new file mode 100644 index 00000000000..8e0885b12b8 --- /dev/null +++ b/.github/workflows/test-framework-v3-spring-delegate-java8.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Spring Delegate Java 8 + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DdelegatePattern=true,hideGenerationTimestamp=true,java8=true -DapiTests=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-delegate-java8-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-delegate-java8-v3-sample" diff --git a/.github/workflows/test-framework-v3-spring-delegate.yml b/.github/workflows/test-framework-v3-spring-delegate.yml new file mode 100644 index 00000000000..98fcb52ff0f --- /dev/null +++ b/.github/workflows/test-framework-v3-spring-delegate.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Spring Delegate + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DdelegatePattern=true,hideGenerationTimestamp=true -DapiTests=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-delegate-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-delegate-v3-sample" diff --git a/.github/workflows/test-framework-v3-spring-mvc-java8-async-server.yml b/.github/workflows/test-framework-v3-spring-mvc-java8-async-server.yml new file mode 100644 index 00000000000..819067cb902 --- /dev/null +++ b/.github/workflows/test-framework-v3-spring-mvc-java8-async-server.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Spring MVC Java8 Async Server + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " --library spring-mvc -DhideGenerationTimestamp=true,java8=true,async=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-mvc-java8-async-server-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-mvc-java8-async-server-v3-sample" diff --git a/.github/workflows/test-framework-v3-spring-mvc-java8-localdatetime.yml b/.github/workflows/test-framework-v3-spring-mvc-java8-localdatetime.yml new file mode 100644 index 00000000000..77aa62b04fe --- /dev/null +++ b/.github/workflows/test-framework-v3-spring-mvc-java8-localdatetime.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Spring MVC Java8 Async Server + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " --library spring-mvc -DhideGenerationTimestamp=true,dateLibrary=java8-localdatetime" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-mvc-java8-async-server-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-mvc-java8-async-server-v3-sample" diff --git a/.github/workflows/test-framework-v3-spring-mvc-server.yml b/.github/workflows/test-framework-v3-spring-mvc-server.yml new file mode 100644 index 00000000000..c425ed42566 --- /dev/null +++ b/.github/workflows/test-framework-v3-spring-mvc-server.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Spring MVC Server + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " --library spring-mvc -DhideGenerationTimestamp=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-mvc-server-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-mvc-server-v3-sample" diff --git a/.github/workflows/test-framework-v3-spring-stubs.yml b/.github/workflows/test-framework-v3-spring-stubs.yml new file mode 100644 index 00000000000..1bfb3c11339 --- /dev/null +++ b/.github/workflows/test-framework-v3-spring-stubs.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Spring Stubs + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " --library spring-mvc -DhideGenerationTimestamp=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "spring-stubs-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "spring-stubs-v3-sample" diff --git a/.github/workflows/test-framework-v3-springboot-beanvalidation.yml b/.github/workflows/test-framework-v3-springboot-beanvalidation.yml new file mode 100644 index 00000000000..8275c348595 --- /dev/null +++ b/.github/workflows/test-framework-v3-springboot-beanvalidation.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Springboot Beanvalidation + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DhideGenerationTimestamp=true -DapiTests=false,useBeanValidation=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "springboot-beanvalidation-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "springboot-beanvalidation-v3-sample" diff --git a/.github/workflows/test-framework-v3-springboot-implicitHeader.yml b/.github/workflows/test-framework-v3-springboot-implicitHeader.yml new file mode 100644 index 00000000000..afa4ade2fca --- /dev/null +++ b/.github/workflows/test-framework-v3-springboot-implicitHeader.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Springboot Implicit Header + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DhideGenerationTimestamp=true -DapiTests=false,implicitHeaders=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "springboot-implicit-headers-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "springboot-implicit-headers-v3-sample" diff --git a/.github/workflows/test-framework-v3-springboot-server.yml b/.github/workflows/test-framework-v3-springboot-server.yml new file mode 100644 index 00000000000..e79c7ec8d9a --- /dev/null +++ b/.github/workflows/test-framework-v3-springboot-server.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Springboot Server + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DhideGenerationTimestamp=true -DapiTests=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "springboot-server-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "springboot-server-v3-sample" diff --git a/.github/workflows/test-framework-v3-springboot-useOptional.yml b/.github/workflows/test-framework-v3-springboot-useOptional.yml new file mode 100644 index 00000000000..b0520ba48a9 --- /dev/null +++ b/.github/workflows/test-framework-v3-springboot-useOptional.yml @@ -0,0 +1,153 @@ +name: Test Framework V3 Springboot UseOptional + +on: + # execute on demand + workflow_dispatch: + branches: ['master'] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING Codegen" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: "spring" + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore-with-fake-endpoints-models-for-testing.yaml" + options: " -DhideGenerationTimestamp=true -DapiTests=false,useOptional=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "springboot-use-optional-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + java-version: [1.8] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "mvn clean package -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "springboot-use-optional-v3-sample" diff --git a/.github/workflows/test-framework-v3-ts-angular-v10.yml b/.github/workflows/test-framework-v3-ts-angular-v10.yml new file mode 100644 index 00000000000..4d1b95da1b9 --- /dev/null +++ b/.github/workflows/test-framework-v3-ts-angular-v10.yml @@ -0,0 +1,157 @@ +name: Test Framework V3 Typescript Angular v10 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-angular + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/3.0.0/swagger-codegen/src/test/resources/3_0_0/petstore.yaml + options: " -DnpmName=@swagger/angular2-typescript-petstore,npmVersion=0.0.1,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,ngVersion=10.0.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-angular-v10-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install -g @angular/cli__&&__npm install -g ng-packagr__&&__npm i__&&__npm run build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "typescript-angular-v10-v3-sample" diff --git a/.github/workflows/test-framework-v3-ts-angular-v11.yml b/.github/workflows/test-framework-v3-ts-angular-v11.yml new file mode 100644 index 00000000000..70c77cd0bb6 --- /dev/null +++ b/.github/workflows/test-framework-v3-ts-angular-v11.yml @@ -0,0 +1,157 @@ +name: Test Framework V3 Typescript Angular v11 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-angular + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/3.0.0/swagger-codegen/src/test/resources/3_0_0/petstore.yaml + options: " -DnpmName=@swagger/angular2-typescript-petstore,npmVersion=0.0.1,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,ngVersion=11.0.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-angular-v11-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install -g @angular/cli__&&__npm install -g ng-packagr__&&__npm i__&&__npm run build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "typescript-angular-v11-v3-sample" diff --git a/.github/workflows/test-framework-v3-ts-angular-v12.yml b/.github/workflows/test-framework-v3-ts-angular-v12.yml new file mode 100644 index 00000000000..5a0831ebb88 --- /dev/null +++ b/.github/workflows/test-framework-v3-ts-angular-v12.yml @@ -0,0 +1,158 @@ +name: Test Framework V3 Typescript Angular v12 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-angular + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/3.0.0/swagger-codegen/src/test/resources/3_0_0/petstore.yaml + options: " -DnpmName=@swagger/angular2-typescript-petstore,npmVersion=0.0.1,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,ngVersion=12.0.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-angular-v12-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install -g @angular/cli__&&__npm install -g ng-packagr__&&__npm i__&&__npm run build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-angular-v12-v3-sample" diff --git a/.github/workflows/test-framework-v3-ts-angular-v4.yml b/.github/workflows/test-framework-v3-ts-angular-v4.yml new file mode 100644 index 00000000000..6fd762baec1 --- /dev/null +++ b/.github/workflows/test-framework-v3-ts-angular-v4.yml @@ -0,0 +1,158 @@ +name: Test Framework V3 Typescript Angular v4 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-angular + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml + options: " -DnpmName=@swagger/angular2-typescript-petstore,npmVersion=0.0.1,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,ngVersion=4" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-angular-v4-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install -g @angular/cli__&&__npm install -g ng-packagr__&&__npm i__&&__npm run build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-angular-v4-v3-sample" diff --git a/.github/workflows/test-framework-v3-ts-angular-v4_3.yml b/.github/workflows/test-framework-v3-ts-angular-v4_3.yml new file mode 100644 index 00000000000..96cab21e5f5 --- /dev/null +++ b/.github/workflows/test-framework-v3-ts-angular-v4_3.yml @@ -0,0 +1,158 @@ +name: Test Framework V3 Typescript Angular v4.3 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-angular + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml + options: " -DnpmName=@swagger/angular2-typescript-petstore,npmVersion=0.0.1,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,ngVersion=4.3" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-angular-v4.3-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install -g @angular/cli__&&__npm install -g ng-packagr__&&__npm i__&&__npm run build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-angular-v4.3-v3-sample" diff --git a/.github/workflows/test-framework-v3-ts-angular-v5.yml b/.github/workflows/test-framework-v3-ts-angular-v5.yml new file mode 100644 index 00000000000..c19ac2bb4ca --- /dev/null +++ b/.github/workflows/test-framework-v3-ts-angular-v5.yml @@ -0,0 +1,158 @@ +name: Test Framework V3 Typescript Angular v5 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-angular + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml + options: " -DnpmName=@swagger/angular2-typescript-petstore,npmVersion=0.0.1,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,ngVersion=5" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-angular-v5-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install -g @angular/cli__&&__npm install -g ng-packagr__&&__npm i__&&__npm run build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-angular-v5-v3-sample" diff --git a/.github/workflows/test-framework-v3-ts-angular-v6.yml b/.github/workflows/test-framework-v3-ts-angular-v6.yml new file mode 100644 index 00000000000..6f5203e1144 --- /dev/null +++ b/.github/workflows/test-framework-v3-ts-angular-v6.yml @@ -0,0 +1,158 @@ +name: Test Framework V3 Typescript Angular v6 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-angular + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml + options: " -DnpmName=@swagger/angular2-typescript-petstore,npmVersion=0.0.1,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,ngVersion=6" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-angular-v4-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install -g @angular/cli__&&__npm install -g ng-packagr__&&__npm i__&&__npm run build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-angular-v6-v3-sample" diff --git a/.github/workflows/test-framework-v3-ts-angular-v7.yml b/.github/workflows/test-framework-v3-ts-angular-v7.yml new file mode 100644 index 00000000000..04eb21c2b00 --- /dev/null +++ b/.github/workflows/test-framework-v3-ts-angular-v7.yml @@ -0,0 +1,158 @@ +name: Test Framework V3 Typescript Angular v7 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-angular + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/3.0.0/swagger-codegen/src/test/resources/3_0_0/petstore.yaml + options: " -DnpmName=@swagger/angular2-typescript-petstore,npmVersion=0.0.1,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,ngVersion=7.0.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-angular-v7-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install -g @angular/cli__&&__npm install -g ng-packagr__&&__npm i__&&__npm run build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-angular-v7-v3-sample" diff --git a/.github/workflows/test-framework-v3-ts-angular-v8.yml b/.github/workflows/test-framework-v3-ts-angular-v8.yml new file mode 100644 index 00000000000..eb8bea37ffb --- /dev/null +++ b/.github/workflows/test-framework-v3-ts-angular-v8.yml @@ -0,0 +1,158 @@ +name: Test Framework V3 Typescript Angular v8 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-angular + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/3.0.0/swagger-codegen/src/test/resources/3_0_0/petstore.yaml + options: " -DnpmName=@swagger/angular2-typescript-petstore,npmVersion=0.0.1,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,ngVersion=8.0.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-angular-v8-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install -g @angular/cli__&&__npm install -g ng-packagr__&&__npm i__&&__npm run build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-angular-v8-v3-sample" diff --git a/.github/workflows/test-framework-v3-ts-angular-v9.yml b/.github/workflows/test-framework-v3-ts-angular-v9.yml new file mode 100644 index 00000000000..611785f17ea --- /dev/null +++ b/.github/workflows/test-framework-v3-ts-angular-v9.yml @@ -0,0 +1,158 @@ +name: Test Framework V3 Typescript Angular v9 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-angular + job-name: ${{ env.JOB_NAME }} + spec-url: https://raw.githubusercontent.com/swagger-api/swagger-codegen/master/3.0.0/swagger-codegen/src/test/resources/3_0_0/petstore.yaml + options: " -DnpmName=@swagger/angular2-typescript-petstore,npmVersion=0.0.1,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,ngVersion=9.0.0" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-angular-v9-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: "npm install -g @angular/cli__&&__npm install -g ng-packagr__&&__npm i__&&__npm run build" + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-angular-v9-v3-sample" diff --git a/.github/workflows/test-framework-v3-typescript-fetch-es6.yml b/.github/workflows/test-framework-v3-typescript-fetch-es6.yml new file mode 100644 index 00000000000..4230d4e0109 --- /dev/null +++ b/.github/workflows/test-framework-v3-typescript-fetch-es6.yml @@ -0,0 +1,163 @@ +name: Test Framework V3 Typescript Fetch ES6 + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-fetch + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --additional-properties npmName=@swagger/typescript-fetch-petstore,npmVersion=1.0.0,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,supportsES6=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-fetch-es6-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: npm install__&&__npm run test + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-fetch-es6-v3-sample" diff --git a/.github/workflows/test-framework-v3-typescript-fetch-interfaces.yml b/.github/workflows/test-framework-v3-typescript-fetch-interfaces.yml new file mode 100644 index 00000000000..9c610847dac --- /dev/null +++ b/.github/workflows/test-framework-v3-typescript-fetch-interfaces.yml @@ -0,0 +1,163 @@ +name: Test Framework V3 Typescript Fetch Interfaces + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-fetch + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --additional-properties npmName=@swagger/typescript-fetch-petstore,npmVersion=1.0.0,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,supportsES6=false -DwithInterfaces=true" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-fetch-interfaces-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: npm install__&&__npm run test + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-interfaces-fetch-v3-sample" diff --git a/.github/workflows/test-framework-v3-typescript-fetch-npm.yml b/.github/workflows/test-framework-v3-typescript-fetch-npm.yml new file mode 100644 index 00000000000..3100b4678c1 --- /dev/null +++ b/.github/workflows/test-framework-v3-typescript-fetch-npm.yml @@ -0,0 +1,162 @@ +name: Test Framework V3 Typescript Fetch NPM + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-fetch + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --additional-properties npmName=@swagger/typescript-fetch-petstore,npmVersion=1.0.0,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,supportsES6=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-fetch-npm-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: npm install__&&__npm run test + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + JOB_NAME: "typescript-fetch-npm-v3-sample" diff --git a/.github/workflows/test-framework-v3-typescript-fetch.yml b/.github/workflows/test-framework-v3-typescript-fetch.yml new file mode 100644 index 00000000000..b44eee31e53 --- /dev/null +++ b/.github/workflows/test-framework-v3-typescript-fetch.yml @@ -0,0 +1,163 @@ +name: Test Framework V3 Typescript Fetch + +on: + # execute on demand + workflow_dispatch: + branches: ["master"] + +jobs: + + # builds codegen cli and uploads its artifact + build-codegen: + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + steps: + - uses: actions/checkout@v2 + with: + ref: 3.0.0 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: build codegen + run: | + mkdir codegen-cli + echo "BUILDING ${{ env.VERSION }}" + mvn -version + mvn -q -B package -DskipTests -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.httpconnectionManager.ttlSeconds=120 -Dmaven.wagon.http.retryHandler.count=3 + cp modules/swagger-codegen-cli/target/swagger-codegen-cli.jar codegen-cli + - name: upload codegen cli + uses: actions/upload-artifact@v2 + with: + name: codegen-cli + path: codegen-cli + - name: upload test cfg file + uses: actions/upload-artifact@v2 + with: + name: test-cfg-files + path: test-cfg-files + + env: + VERSION: ${{ github.event.inputs.version }} + + generate: + + needs: build-codegen + + runs-on: ubuntu-latest + + strategy: + matrix: + java: [ 8 ] + + + outputs: + generate_outcome: ${{ steps.outcome.outputs.generate_outcome }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Download codegen cli + uses: actions/download-artifact@v2 + with: + name: codegen-cli + - name: generate + id: generate + continue-on-error: true + uses: ./.github/actions/generate + with: + language: typescript-fetch + job-name: ${{ env.JOB_NAME }} + spec-url: "https://raw.githubusercontent.com/swagger-api/swagger-codegen/3.0.0/modules/swagger-codegen/src/test/resources/3_0_0/petstore.yaml" + options: " --additional-properties npmName=@swagger/typescript-fetch-petstore,npmVersion=1.0.0,npmRepository=https://skimdb.npmjs.com/registry,snapshot=false,supportsES6=false" + - id: outcome + run: | + echo "::set-output name=generate_outcome::${{ steps.generate.outcome }}" + echo ${{ steps.generate.outcome }} > generate_outcome_${{ env.JOB_NAME }} + - name: upload generate outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_outcome + path: generate_outcome_${{ env.JOB_NAME }} + - name: upload generate logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + path: ${{ steps.generate.outputs.logs }} + - name: upload generated code + if: contains(steps.generate.outcome, 'success') + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: ${{ steps.generate.outputs.path }} + env: + JOB_NAME: "typescript-fetch-v3-sample" + + build: + + needs: generate + if: contains(needs.generate.outputs.generate_outcome, 'success') + runs-on: ubuntu-latest + + strategy: + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + matrix: + node-version: [12.x] + java: [ 8 ] + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + steps: + - uses: actions/checkout@v2 + - name: Download artifacts + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generated + path: generated/${{ env.JOB_NAME }} + - name: Download logs + uses: actions/download-artifact@v2 + with: + name: ${{ env.JOB_NAME }}generate_logs + ############################################### + ##### DYNAMIC: Dependent on build environment + ############################################### + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + ############################################### + ##### END DYNAMIC: Dependent on build environment + ############################################### + - name: build + id: build + uses: ./.github/actions/build + continue-on-error: true + with: + path: generated/${{ env.JOB_NAME }} + job-name: ${{ env.JOB_NAME }} + build-commands: npm install__&&__npm run test + - id: outcome + run: | + echo "::set-output name=build_outcome::${{ steps.build.outcome }}" + echo ${{ steps.build.outcome }} > ${{ env.JOB_NAME }}build_outcome + - name: upload build outcome + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}build_outcome + path: ${{ env.JOB_NAME }}build_outcome + - name: upload logs + uses: actions/upload-artifact@v2 + with: + name: ${{ env.JOB_NAME }}logs + path: ${{ steps.build.outputs.logs }} + env: + LANGUAGE: ${{ github.event.inputs.language }} + JOB_NAME: "typescript-fetch-v3-sample" diff --git a/README.md b/README.md index 0c892ecf324..1a54452cd0f 100644 --- a/README.md +++ b/README.md @@ -6,10 +6,10 @@ [![Build Status](https://jenkins.swagger.io/view/OSS%20-%20Java/job/oss-swagger-codegen-master-java7/badge/icon?subject=jenkins%20build%20-%20java%207)](https://jenkins.swagger.io/view/OSS%20-%20Java/job/oss-swagger-codegen-master-java7/) -- Master (2.4.28-SNAPSHOT): [![Java Test](https://img.shields.io/jenkins/build.svg?jobUrl=https://jenkins.swagger.io/job/oss-swagger-codegen-master)](https://jenkins.swagger.io/view/OSS%20-%20Java/job/oss-swagger-codegen-master) +- Master (2.4.29-SNAPSHOT): [![Java Test](https://img.shields.io/jenkins/build.svg?jobUrl=https://jenkins.swagger.io/job/oss-swagger-codegen-master)](https://jenkins.swagger.io/view/OSS%20-%20Java/job/oss-swagger-codegen-master) [![Windows Test](https://ci.appveyor.com/api/projects/status/github/swagger-api/swagger-codegen?branch=master&svg=true&passingText=Windows%20Test%20-%20OK&failingText=Windows%20Test%20-%20Fails)](https://ci.appveyor.com/project/swaggerhub-bot/swagger-codegen) -- 3.0.34-SNAPSHOT: [![Java Test](https://img.shields.io/jenkins/build.svg?jobUrl=https://jenkins.swagger.io/job/oss-swagger-codegen-3)](https://jenkins.swagger.io/view/OSS%20-%20Java/job/oss-swagger-codegen-3) +- 3.0.36-SNAPSHOT: [![Java Test](https://img.shields.io/jenkins/build.svg?jobUrl=https://jenkins.swagger.io/job/oss-swagger-codegen-3)](https://jenkins.swagger.io/view/OSS%20-%20Java/job/oss-swagger-codegen-3) [![Windows Test](https://ci.appveyor.com/api/projects/status/github/swagger-api/swagger-codegen?branch=3.0.0&svg=true&passingText=Windows%20Test%20-%20OK&failingText=Windows%20Test%20-%20Fails)](https://ci.appveyor.com/project/swaggerhub-bot/swagger-codegen) @@ -50,7 +50,7 @@ dependency example: io.swagger swagger-codegen-maven-plugin - 2.4.27 + 2.4.28 ``` @@ -68,7 +68,7 @@ dependency example: io.swagger.codegen.v3 swagger-codegen-maven-plugin - 3.0.34 + 3.0.35 ``` @@ -132,8 +132,9 @@ The OpenAPI Specification has undergone 3 revisions since initial creation in 20 Swagger Codegen Version | Release Date | OpenAPI Spec compatibility | Notes -------------------------- |--------------| -------------------------- | ----- -3.0.35-SNAPSHOT (current 3.0.0, upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/io/swagger/codegen/v3/swagger-codegen-cli/3.0.35-SNAPSHOT/)| TBD | 1.0, 1.1, 1.2, 2.0, 3.0 | Minor release -[3.0.34](https://github.com/swagger-api/swagger-codegen/releases/tag/v3.0.34) (**current stable**) | 2022-04-12 | 1.0, 1.1, 1.2, 2.0, 3.0 | [tag v3.0.34](https://github.com/swagger-api/swagger-codegen/tree/v3.0.34) +3.0.36-SNAPSHOT (current 3.0.0, upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/io/swagger/codegen/v3/swagger-codegen-cli/3.0.36-SNAPSHOT/)| TBD | 1.0, 1.1, 1.2, 2.0, 3.0 | Minor release +[3.0.35](https://github.com/swagger-api/swagger-codegen/releases/tag/v3.0.35) (**current stable**) | 2022-08-15 | 1.0, 1.1, 1.2, 2.0, 3.0 | [tag v3.0.35](https://github.com/swagger-api/swagger-codegen/tree/v3.0.35) +[3.0.34](https://github.com/swagger-api/swagger-codegen/releases/tag/v3.0.34) | 2022-04-12 | 1.0, 1.1, 1.2, 2.0, 3.0 | [tag v3.0.34](https://github.com/swagger-api/swagger-codegen/tree/v3.0.34) [3.0.33](https://github.com/swagger-api/swagger-codegen/releases/tag/v3.0.33) | 2022-02-07 | 1.0, 1.1, 1.2, 2.0, 3.0 | [tag v3.0.33](https://github.com/swagger-api/swagger-codegen/tree/v3.0.33) [3.0.32](https://github.com/swagger-api/swagger-codegen/releases/tag/v3.0.32) | 2022-01-11 | 1.0, 1.1, 1.2, 2.0, 3.0 | [tag v3.0.32](https://github.com/swagger-api/swagger-codegen/tree/v3.0.32) [3.0.31](https://github.com/swagger-api/swagger-codegen/releases/tag/v3.0.31) | 2021-12-28 | 1.0, 1.1, 1.2, 2.0, 3.0 | [tag v3.0.31](https://github.com/swagger-api/swagger-codegen/tree/v3.0.31) @@ -167,8 +168,9 @@ Swagger Codegen Version | Release Date | OpenAPI Spec compatibility | Notes [3.0.2](https://github.com/swagger-api/swagger-codegen/releases/tag/v3.0.2)| 2018-10-19 | 1.0, 1.1, 1.2, 2.0, 3.0 | Minor release [3.0.1](https://github.com/swagger-api/swagger-codegen/releases/tag/v3.0.1)| 2018-10-05 | 1.0, 1.1, 1.2, 2.0, 3.0 | Major release with breaking changes [3.0.0](https://github.com/swagger-api/swagger-codegen/releases/tag/v3.0.0)| 2018-09-06 | 1.0, 1.1, 1.2, 2.0, 3.0 | Major release with breaking changes -2.4.27-SNAPSHOT (current master, upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/io/swagger/swagger-codegen-cli/2.4.27-SNAPSHOT/)| TBD | 1.0, 1.1, 1.2, 2.0 | Minor release -[2.4.27](https://github.com/swagger-api/swagger-codegen/releases/tag/v2.4.27) (**current stable**) | 2022-04-12 | 1.0, 1.1, 1.2, 2.0 | [tag v2.4.27](https://github.com/swagger-api/swagger-codegen/tree/v2.4.27) +2.4.29-SNAPSHOT (current master, upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/io/swagger/swagger-codegen-cli/2.4.29-SNAPSHOT/)| TBD | 1.0, 1.1, 1.2, 2.0 | Minor release +[2.4.28](https://github.com/swagger-api/swagger-codegen/releases/tag/v2.4.28) (**current stable**) | 2022-08-15 | 1.0, 1.1, 1.2, 2.0 | [tag v2.4.28](https://github.com/swagger-api/swagger-codegen/tree/v2.4.28) +[2.4.27](https://github.com/swagger-api/swagger-codegen/releases/tag/v2.4.27) | 2022-04-12 | 1.0, 1.1, 1.2, 2.0 | [tag v2.4.27](https://github.com/swagger-api/swagger-codegen/tree/v2.4.27) [2.4.26](https://github.com/swagger-api/swagger-codegen/releases/tag/v2.4.26) | 2022-02-07 | 1.0, 1.1, 1.2, 2.0 | [tag v2.4.26](https://github.com/swagger-api/swagger-codegen/tree/v2.4.26) [2.4.25](https://github.com/swagger-api/swagger-codegen/releases/tag/v2.4.25) | 2021-12-28 | 1.0, 1.1, 1.2, 2.0 | [tag v2.4.25](https://github.com/swagger-api/swagger-codegen/tree/v2.4.25) [2.4.24](https://github.com/swagger-api/swagger-codegen/releases/tag/v2.4.24) | 2021-11-18 | 1.0, 1.1, 1.2, 2.0 | [tag v2.4.24](https://github.com/swagger-api/swagger-codegen/tree/v2.4.24) @@ -209,17 +211,17 @@ If you're looking for the latest stable version, you can grab it directly from M ```sh # Download current stable 2.x.x branch (Swagger and OpenAPI version 2) -wget https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.4.27/swagger-codegen-cli-2.4.27.jar -O swagger-codegen-cli.jar +wget https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.4.28/swagger-codegen-cli-2.4.28.jar -O swagger-codegen-cli.jar java -jar swagger-codegen-cli.jar help # Download current stable 3.x.x branch (OpenAPI version 3) -wget https://repo1.maven.org/maven2/io/swagger/codegen/v3/swagger-codegen-cli/3.0.34/swagger-codegen-cli-3.0.34.jar -O swagger-codegen-cli.jar +wget https://repo1.maven.org/maven2/io/swagger/codegen/v3/swagger-codegen-cli/3.0.35/swagger-codegen-cli-3.0.35.jar -O swagger-codegen-cli.jar java -jar swagger-codegen-cli.jar --help ``` -For Windows users, you will need to install [wget](http://gnuwin32.sourceforge.net/packages/wget.htm) or you can use Invoke-WebRequest in PowerShell (3.0+), e.g. `Invoke-WebRequest -OutFile swagger-codegen-cli.jar https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.4.27/swagger-codegen-cli-2.4.27.jar` +For Windows users, you will need to install [wget](http://gnuwin32.sourceforge.net/packages/wget.htm) or you can use Invoke-WebRequest in PowerShell (3.0+), e.g. `Invoke-WebRequest -OutFile swagger-codegen-cli.jar https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.4.28/swagger-codegen-cli-2.4.28.jar` On a mac, it's even easier with `brew`: ```sh @@ -367,7 +369,7 @@ java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate \ ``` (if you're on Windows, replace the last command with `java -jar modules\swagger-codegen-cli\target\swagger-codegen-cli.jar generate -i https://petstore.swagger.io/v2/swagger.json -l php -o c:\temp\php_api_client`) -You can also download the JAR (latest release) directly from [maven.org](https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.4.27/swagger-codegen-cli-2.4.27.jar) +You can also download the JAR (latest release) directly from [maven.org](https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.4.28/swagger-codegen-cli-2.4.28.jar) To get a list of **general** options available, please run `java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar help generate` (for version 3.x check [3.0.0 branch](https://github.com/swagger-api/swagger-codegen/tree/3.0.0)) diff --git a/modules/swagger-codegen-cli/pom.xml b/modules/swagger-codegen-cli/pom.xml index 8d38749c9e7..aee9b24eecd 100644 --- a/modules/swagger-codegen-cli/pom.xml +++ b/modules/swagger-codegen-cli/pom.xml @@ -3,7 +3,7 @@ io.swagger swagger-codegen-project - 2.4.27 + 2.4.28 ../.. 4.0.0 diff --git a/modules/swagger-codegen-maven-plugin/pom.xml b/modules/swagger-codegen-maven-plugin/pom.xml index 4e3cad31ab7..007c0b2ad4f 100644 --- a/modules/swagger-codegen-maven-plugin/pom.xml +++ b/modules/swagger-codegen-maven-plugin/pom.xml @@ -4,7 +4,7 @@ io.swagger swagger-codegen-project - 2.4.27 + 2.4.28 ../.. swagger-codegen-maven-plugin diff --git a/modules/swagger-codegen/pom.xml b/modules/swagger-codegen/pom.xml index 10ed060204b..73654cced2f 100644 --- a/modules/swagger-codegen/pom.xml +++ b/modules/swagger-codegen/pom.xml @@ -3,7 +3,7 @@ io.swagger swagger-codegen-project - 2.4.27 + 2.4.28 ../.. 4.0.0 diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/CodegenConfig.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/CodegenConfig.java index 148b7a70c13..9e07b956594 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/CodegenConfig.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/CodegenConfig.java @@ -237,4 +237,6 @@ public interface CodegenConfig { void setIgnoreImportMapping(boolean ignoreImportMapping); boolean defaultIgnoreImportMappingOption(); + + boolean isUsingFlattenSpec(); } diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultCodegen.java index 19f485f4fcc..3c7dcf35616 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultCodegen.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/DefaultCodegen.java @@ -4110,4 +4110,8 @@ protected boolean isModelObject(ModelImpl model) { } return false; } + + public boolean isUsingFlattenSpec() { + return true; + } } diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/InlineModelResolver.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/InlineModelResolver.java index 5cac878003a..d32181da552 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/InlineModelResolver.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/InlineModelResolver.java @@ -22,7 +22,7 @@ * ParseOptions parseOptions = new ParseOptions(); * parseOptions.setFlatten(true); * Swagger swagger = new SwaggerParser().read(rootNode, new ArrayList<>(), parseOptions);*/ - +@Deprecated public class InlineModelResolver { private Swagger swagger; private boolean skipMatches; diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/config/CodegenConfigurator.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/config/CodegenConfigurator.java index b6b4396219f..28f9145e1c1 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/config/CodegenConfigurator.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/config/CodegenConfigurator.java @@ -446,7 +446,9 @@ public ClientOptInput toClientOptInput() { final List authorizationValues = AuthParser.parse(auth); ParseOptions parseOptions = new ParseOptions(); parseOptions.setResolve(true); - parseOptions.setFlatten(true); + if (config.isUsingFlattenSpec()) { + parseOptions.setFlatten(true); + } Swagger swagger = new SwaggerParser().read(inputSpec, authorizationValues, parseOptions); input.opts(new ClientOpts()) diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/SwaggerYamlGenerator.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/SwaggerYamlGenerator.java index 4acb45e31ea..420119df6a9 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/SwaggerYamlGenerator.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/SwaggerYamlGenerator.java @@ -32,6 +32,8 @@ public class SwaggerYamlGenerator extends DefaultCodegen implements CodegenConfi public static final String OUTPUT_NAME = "outputFile"; + public static final String MINMIZE_QUOTES = "minimizeQuotes"; + public static final String SWAGGER_FILENAME_DEFAULT_YAML = "swagger.yaml"; protected String outputFile = SWAGGER_FILENAME_DEFAULT_YAML; @@ -46,6 +48,10 @@ public SwaggerYamlGenerator() { "output filename") .defaultValue(SWAGGER_FILENAME_DEFAULT_YAML)); + cliOptions.add(new CliOption(MINMIZE_QUOTES, + "minimize quotes") + .defaultValue(Boolean.TRUE.toString())); + supportingFiles.add(new SupportingFile("README.md", "", "README.md")); } @@ -80,10 +86,21 @@ public void setOutputFile(String outputFile) { @Override public void processSwagger(Swagger swagger) { try { - final ObjectMapper mapper = new ObjectMapper(new YAMLFactory() - .configure(YAMLGenerator.Feature.MINIMIZE_QUOTES, true) + boolean minimizeQuotes = !additionalProperties.containsKey(MINMIZE_QUOTES) || + (additionalProperties.containsKey(MINMIZE_QUOTES) && + additionalProperties.get(MINMIZE_QUOTES) instanceof Boolean ? + (Boolean)additionalProperties.get(MINMIZE_QUOTES) : + Boolean.valueOf((String)additionalProperties.get(MINMIZE_QUOTES) + ) + ); + YAMLFactory yamlFactory = new YAMLFactory() .configure(YAMLGenerator.Feature.SPLIT_LINES, false) - .configure(YAMLGenerator.Feature.ALWAYS_QUOTE_NUMBERS_AS_STRINGS, true)); + .configure(YAMLGenerator.Feature.ALWAYS_QUOTE_NUMBERS_AS_STRINGS, true); + + yamlFactory.configure(YAMLGenerator.Feature.MINIMIZE_QUOTES, minimizeQuotes); + + final ObjectMapper mapper = new ObjectMapper(yamlFactory); + configureMapper(mapper); String swaggerString = mapper.writeValueAsString(swagger); String outputFile = outputFolder + File.separator + this.outputFile; diff --git a/modules/swagger-codegen/src/test/java/io/swagger/codegen/options/SwaggerYamlOptionsProvider.java b/modules/swagger-codegen/src/test/java/io/swagger/codegen/options/SwaggerYamlOptionsProvider.java index e6636d8c23b..9136eed992a 100644 --- a/modules/swagger-codegen/src/test/java/io/swagger/codegen/options/SwaggerYamlOptionsProvider.java +++ b/modules/swagger-codegen/src/test/java/io/swagger/codegen/options/SwaggerYamlOptionsProvider.java @@ -12,6 +12,7 @@ public class SwaggerYamlOptionsProvider implements OptionsProvider { public static final String ENSURE_UNIQUE_PARAMS_VALUE = "true"; public static final String OUTPUT_NAME = "swagger.yaml"; public static final String ALLOW_UNICODE_IDENTIFIERS_VALUE = "false"; + public static final String MINIMIZE_QUOTES = "true"; @Override public String getLanguage() { @@ -25,6 +26,7 @@ public Map createOptions() { .put(CodegenConstants.ENSURE_UNIQUE_PARAMS, ENSURE_UNIQUE_PARAMS_VALUE) .put(SwaggerYamlGenerator.OUTPUT_NAME, OUTPUT_NAME) .put(CodegenConstants.ALLOW_UNICODE_IDENTIFIERS, ALLOW_UNICODE_IDENTIFIERS_VALUE) + .put(SwaggerYamlGenerator.MINMIZE_QUOTES, MINIMIZE_QUOTES) .build(); } diff --git a/modules/swagger-generator/pom.xml b/modules/swagger-generator/pom.xml index 0f5cd46b961..a40ca9b3a9a 100644 --- a/modules/swagger-generator/pom.xml +++ b/modules/swagger-generator/pom.xml @@ -4,7 +4,7 @@ io.swagger swagger-codegen-project - 2.4.27 + 2.4.28 ../.. swagger-generator diff --git a/modules/swagger-generator/src/main/java/io/swagger/generator/Bootstrap.java b/modules/swagger-generator/src/main/java/io/swagger/generator/Bootstrap.java index f365bda6ada..e88eaa060a2 100644 --- a/modules/swagger-generator/src/main/java/io/swagger/generator/Bootstrap.java +++ b/modules/swagger-generator/src/main/java/io/swagger/generator/Bootstrap.java @@ -38,9 +38,10 @@ public void init(ServletConfig config) throws ServletException { if (scheme != null) { bc.setSchemes(new String[] { scheme }); } - String host = hostURI.getHost(); - if (host != null) { - bc.setHost(host); + String authority = hostURI.getAuthority(); + if (authority != null) { + // In Swagger host refers to host _and_ port, a.k.a. the URI authority + bc.setHost(authority); } bc.setBasePath(hostURI.getPath() + "/api"); } catch(URISyntaxException e) { diff --git a/modules/swagger-generator/src/main/java/io/swagger/generator/DynamicSwaggerConfig.java b/modules/swagger-generator/src/main/java/io/swagger/generator/DynamicSwaggerConfig.java index 35d143d4b7e..b6e4e63ca6e 100644 --- a/modules/swagger-generator/src/main/java/io/swagger/generator/DynamicSwaggerConfig.java +++ b/modules/swagger-generator/src/main/java/io/swagger/generator/DynamicSwaggerConfig.java @@ -7,12 +7,15 @@ import io.swagger.models.Operation; import io.swagger.models.Path; import io.swagger.models.Swagger; +import io.swagger.models.Scheme; import io.swagger.models.parameters.Parameter; import io.swagger.models.parameters.PathParameter; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collections; import java.util.List; +import java.util.stream.Collectors; public class DynamicSwaggerConfig extends BeanConfig { static List clients = new ArrayList(); @@ -73,6 +76,15 @@ public Swagger configure(Swagger swagger) { } } - return swagger.info(getInfo()).host(getHost()).basePath("/api"); + Swagger result = swagger + .info(getInfo()) + .host(getHost()) + .basePath(getBasePath()); + + if (getSchemes() != null) { + result = result.schemes(Arrays.stream(getSchemes()).map(s -> Scheme.forValue(s)).collect(Collectors.toList())); + } + + return result; } } diff --git a/modules/swagger-generator/src/main/java/io/swagger/generator/model/GeneratorInput.java b/modules/swagger-generator/src/main/java/io/swagger/generator/model/GeneratorInput.java index 439c730c8bd..bf7e12274aa 100644 --- a/modules/swagger-generator/src/main/java/io/swagger/generator/model/GeneratorInput.java +++ b/modules/swagger-generator/src/main/java/io/swagger/generator/model/GeneratorInput.java @@ -14,6 +14,8 @@ public class GeneratorInput { private SecuritySchemeDefinition auth; private AuthorizationValue authorizationValue; + private Boolean usingFlattenSpec = true; + public AuthorizationValue getAuthorizationValue() { return authorizationValue; } @@ -57,4 +59,17 @@ public SecuritySchemeDefinition getSecurityDefinition() { public void setSecurityDefinition(SecuritySchemeDefinition auth) { this.auth = auth; } + + public Boolean isUsingFlattenSpec() { + return usingFlattenSpec; + } + + public Boolean getUsingFlattenSpec() { + return usingFlattenSpec; + } + + public void setUsingFlattenSpec(Boolean usingFlattenSpec) { + this.usingFlattenSpec = usingFlattenSpec; + } + } diff --git a/modules/swagger-generator/src/main/java/io/swagger/generator/online/Generator.java b/modules/swagger-generator/src/main/java/io/swagger/generator/online/Generator.java index 2ed426d43ee..3c1fe8c9e77 100644 --- a/modules/swagger-generator/src/main/java/io/swagger/generator/online/Generator.java +++ b/modules/swagger-generator/src/main/java/io/swagger/generator/online/Generator.java @@ -10,6 +10,7 @@ import io.swagger.models.Swagger; import io.swagger.models.auth.AuthorizationValue; import io.swagger.parser.SwaggerParser; +import io.swagger.parser.util.ParseOptions; import io.swagger.util.Json; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -72,7 +73,19 @@ private static String generate(String language, GeneratorInput opts, Type type) LOGGER.debug("ignoring empty spec"); node = null; } + CodegenConfig codegenConfig = null; + try { + codegenConfig = CodegenConfigLoader.forName(language); + } catch (RuntimeException e) { + throw new BadRequestException("Unsupported target " + language + " supplied"); + } + Swagger swagger; + ParseOptions parseOptions = new ParseOptions(); + parseOptions.setResolve(true); + if (codegenConfig.isUsingFlattenSpec() && !Boolean.FALSE.equals(opts.isUsingFlattenSpec())) { + parseOptions.setFlatten(true); + } if (node == null) { if (opts.getSwaggerUrl() != null) { if (opts.getAuthorizationValue() != null) { @@ -82,9 +95,9 @@ private static String generate(String language, GeneratorInput opts, Type type) swagger = new SwaggerParser().read(opts.getSwaggerUrl(), authorizationValues, - true); + parseOptions); } else { - swagger = new SwaggerParser().read(opts.getSwaggerUrl()); + swagger = new SwaggerParser().read(opts.getSwaggerUrl(), null, parseOptions); } } else { throw new BadRequestException("No swagger specification was supplied"); @@ -92,9 +105,9 @@ private static String generate(String language, GeneratorInput opts, Type type) } else if (opts.getAuthorizationValue() != null) { List authorizationValues = new ArrayList(); authorizationValues.add(opts.getAuthorizationValue()); - swagger = new SwaggerParser().read(node, authorizationValues, true); + swagger = new SwaggerParser().read(node, authorizationValues, parseOptions); } else { - swagger = new SwaggerParser().read(node, true); + swagger = new SwaggerParser().read(node, null,parseOptions); } if (swagger == null) { throw new BadRequestException("The swagger specification supplied was not valid"); @@ -116,12 +129,6 @@ private static String generate(String language, GeneratorInput opts, Type type) clientOptInput.opts(clientOpts).swagger(swagger); - CodegenConfig codegenConfig = null; - try { - codegenConfig = CodegenConfigLoader.forName(language); - } catch (RuntimeException e) { - throw new BadRequestException("Unsupported target " + language + " supplied"); - } if (opts.getOptions() != null) { codegenConfig.additionalProperties().putAll(opts.getOptions()); diff --git a/pom.xml b/pom.xml index 4746ca6d609..d70a44de8ef 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ swagger-codegen-project pom swagger-codegen-project - 2.4.27 + 2.4.28 https://github.com/swagger-api/swagger-codegen scm:git:git@github.com:swagger-api/swagger-codegen.git @@ -952,7 +952,7 @@ - 1.0.59 + 1.0.61 2.11.1 3.3.0 1.6.6 diff --git a/pom.xml.jenkins b/pom.xml.jenkins index 9aa1f0f6107..540d498e796 100644 --- a/pom.xml.jenkins +++ b/pom.xml.jenkins @@ -9,7 +9,7 @@ swagger-codegen-project pom swagger-codegen-project - 2.4.27 + 2.4.28 https://github.com/swagger-api/swagger-codegen scm:git:git@github.com:swagger-api/swagger-codegen.git @@ -992,7 +992,7 @@ - 1.0.59 + 1.0.61 2.11.1 3.3.0 1.6.6