From ee4f73d0831d1fc24b970772dee9d8b59e95b643 Mon Sep 17 00:00:00 2001 From: Pierre Millot Date: Mon, 28 Feb 2022 12:37:24 +0100 Subject: [PATCH 1/2] fix(ci): formatting for js client --- scripts/common.ts | 9 ++++++++- scripts/generate.ts | 12 ++++++------ 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/scripts/common.ts b/scripts/common.ts index 41dcf7643d..04cc19c0b4 100644 --- a/scripts/common.ts +++ b/scripts/common.ts @@ -15,7 +15,14 @@ export const ROOT_DIR = path.resolve(process.cwd(), '..'); export const GENERATORS = Object.fromEntries( Object.entries(openapitools['generator-cli'].generators).map(([key, gen]) => { - return [key, { ...gen, ...splitGeneratorKey(key) }]; + return [ + key, + { + ...gen, + output: gen.output.replace('#{cwd}/', ''), + ...splitGeneratorKey(key), + }, + ]; }) ); diff --git a/scripts/generate.ts b/scripts/generate.ts index 5a6d5a594c..c83663aacd 100644 --- a/scripts/generate.ts +++ b/scripts/generate.ts @@ -10,8 +10,7 @@ async function preGen( { language, client, key, output }: Generator, verbose?: boolean ): Promise { - const folder = output.replace('#{cwd}/', ''); - await runIfExists(`./scripts/pre-gen/${language}.sh`, `${folder} ${key}`, { + await runIfExists(`./scripts/pre-gen/${language}.sh`, `${output} ${key}`, { verbose, }); @@ -31,8 +30,7 @@ async function postGen( { language, key, output }: Generator, verbose?: boolean ): Promise { - const folder = output.replace('#{cwd}/', ''); - await runIfExists(`./scripts/post-gen/${language}.sh`, `${folder} ${key}`, { + await runIfExists(`./scripts/post-gen/${language}.sh`, `${output} ${key}`, { verbose, }); } @@ -56,7 +54,7 @@ export async function generate( spinner.text = `post-gen ${gen.key}`; await postGen(gen, verbose); - if (gen.language === 'javascript' && CI) { + if (CI && gen.language === 'javascript') { // because the CI is parallelized, run the formatter for each client await formatter(gen.language, gen.output, verbose); } @@ -66,9 +64,11 @@ export async function generate( const langs = [...new Set(generators.map((gen) => gen.language))]; for (const lang of langs) { - if (!CI || lang !== 'javascript') { + if (!(CI && lang === 'javascript')) { await formatter(lang, getLanguageFolder(lang), verbose); } + + // build common packages if (lang === 'javascript') { const spinner = createSpinner( 'cleaning JavaScript client utils', From 4f1ab14807431234ea50b0718606d8329eae1abb Mon Sep 17 00:00:00 2001 From: Pierre Millot Date: Mon, 28 Feb 2022 12:44:54 +0100 Subject: [PATCH 2/2] more log in CI --- .github/actions/setup/action.yml | 13 +++++++++++++ .github/workflows/check.yml | 20 +++++++++++++++----- 2 files changed, 28 insertions(+), 5 deletions(-) diff --git a/.github/actions/setup/action.yml b/.github/actions/setup/action.yml index 6a8a4e5b16..aece7c4b16 100644 --- a/.github/actions/setup/action.yml +++ b/.github/actions/setup/action.yml @@ -61,6 +61,9 @@ runs: run="true" fi + echo "Running spec matrix: $run" + echo "Spec matrix: $(echo $matrix | jq .)" + echo "::set-output name=MATRIX::$matrix" echo "::set-output name=RUN_SPECS::$run" @@ -78,10 +81,14 @@ runs: run="true" fi + echo "Running javascript matrix: $run" + echo "Javascript matrix: $(echo $matrix | jq .)" + echo "::set-output name=MATRIX::$matrix" echo "::set-output name=RUN_CLIENT::$run" if [[ $base_changed == 'true' || steps.diff.outputs.JS_COMMON_CHANGED > 0 ]]; then + echo "Running common javascript: true" echo "::set-output name=RUN_COMMON::true" fi @@ -99,6 +106,9 @@ runs: run="true" fi + echo "Running java matrix: $run" + echo "Java matrix: $(echo $matrix | jq .)" + echo "::set-output name=MATRIX::$matrix" echo "::set-output name=RUN_CLIENT::$run" @@ -116,6 +126,9 @@ runs: run="true" fi + echo "Running php matrix: $run" + echo "PHP matrix: $(echo $matrix | jq .)" + echo "::set-output name=MATRIX::$matrix" echo "::set-output name=RUN_CLIENT::$run" diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index c1fb46f3b7..6052f5e626 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -63,7 +63,9 @@ jobs: run: yarn cli build specs ${{ matrix.client }} - name: Check diff with pushed spec - run: exit $(git status --porcelain specs/bundled/${{ matrix.client }}.yml | wc -l) + run: | + git status + exit $(git status --porcelain specs/bundled/${{ matrix.client }}.yml | wc -l) client_javascript_common: timeout-minutes: 10 @@ -127,7 +129,9 @@ jobs: - name: Check diff with pushed client if: steps.cache.outputs.cache-hit != 'true' - run: exit $(git status --porcelain ${{ matrix.client.folder }} | wc -l) + run: | + git status + exit $(git status --porcelain ${{ matrix.client.folder }} | wc -l) - name: Build ${{ matrix.client.name }} client if: steps.cache.outputs.cache-hit != 'true' @@ -164,7 +168,9 @@ jobs: - name: Check diff with pushed client if: steps.cache.outputs.cache-hit != 'true' - run: exit $(git status --porcelain ${{ matrix.client.folder }} | wc -l) + run: | + git status + exit $(git status --porcelain ${{ matrix.client.folder }} | wc -l) - name: Build ${{ matrix.client.name }} client if: steps.cache.outputs.cache-hit != 'true' @@ -194,7 +200,9 @@ jobs: - name: Check diff with pushed client if: steps.cache.outputs.cache-hit != 'true' - run: exit $(git status --porcelain ${{ matrix.client.folder }} | wc -l) + run: | + git status + exit $(git status --porcelain ${{ matrix.client.folder }} | wc -l) - name: Build ${{ matrix.client.name }} client if: steps.cache.outputs.cache-hit != 'true' @@ -221,7 +229,9 @@ jobs: run: yarn cli cts generate - name: Check diff with pushed CTS - run: exit $(git status --porcelain ./tests/output | wc -l) + run: | + git status + exit $(git status --porcelain ./tests/output | wc -l) - name: Run CTS run: yarn cli cts run