--- a/.docker/Dockerfile-parachain +++ b/.docker/Dockerfile-parachain @@ -23,7 +23,7 @@ RUN rustup target add wasm32-unknown-unknown --toolchain $RUST_TOOLCHAIN -RUN mkdir unique_parachain +RUN mkdir /unique_parachain WORKDIR /unique_parachain # ===== BUILD ====== @@ -32,13 +32,11 @@ ARG PROFILE=release ARG FEATURE= -RUN mkdir unique_parachain +RUN mkdir /unique_parachain WORKDIR /unique_parachain RUN git clone $REPO_URL -b $BRANCH RUN cargo build $FEATURE --$PROFILE - # && \ - # cargo test # ===== BUILD POLKADOT ===== FROM rust-builder as builder-polkadot @@ -46,7 +44,7 @@ ARG POLKA_VERSION=release-v0.9.24 ENV POLKA_VERSION $POLKA_VERSION -RUN mkdir unique_parachain +RUN mkdir /unique_parachain WORKDIR /unique_parachain RUN git clone -b $POLKA_VERSION --depth 1 https://github.com/paritytech/polkadot.git && \ @@ -77,7 +75,7 @@ COPY --from=builder-unique /unique_parachain/target/release/unique-collator /unique-chain/target/release/ COPY --from=builder-polkadot /unique_parachain/polkadot/target/release/polkadot /polkadot/target/release/ -COPY ["./launch-config.json", "/polkadot-launch/launch-config.json"] +COPY --from=builder-unique /unique_parachain/launch-config.json /polkadot-launch/launch-config.json CMD export NVM_DIR="$HOME/.nvm" && \ --- a/.github/workflows/codestyle.yml +++ b/.github/workflows/codestyle.yml @@ -14,6 +14,24 @@ runs-on: self-hosted-ci steps: + - name: Skip if pull request is in Draft + # `if: github.event.pull_request.draft == true` should be kept here, at + # the step level, rather than at the job level. The latter is not + # recommended because when the PR is moved from "Draft" to "Ready to + # review" the workflow will immediately be passing (since it was skipped), + # even though it hasn't actually ran, since it takes a few seconds for + # the workflow to start. This is also disclosed in: + # https://github.community/t/dont-run-actions-on-draft-pull-requests/16817/17 + # That scenario would open an opportunity for the check to be bypassed: + # 1. Get your PR approved + # 2. Move it to Draft + # 3. Push whatever commits you want + # 4. Move it to "Ready for review"; now the workflow is passing (it was + # skipped) and "Check reviews" is also passing (it won't be updated + # until the workflow is finished) + if: github.event.pull_request.draft == true + run: exit 1 + - uses: actions/checkout@v1 - name: Install latest nightly uses: actions-rs/toolchain@v1 @@ -30,6 +48,24 @@ runs-on: self-hosted-ci steps: + - name: Skip if pull request is in Draft + # `if: github.event.pull_request.draft == true` should be kept here, at + # the step level, rather than at the job level. The latter is not + # recommended because when the PR is moved from "Draft" to "Ready to + # review" the workflow will immediately be passing (since it was skipped), + # even though it hasn't actually ran, since it takes a few seconds for + # the workflow to start. This is also disclosed in: + # https://github.community/t/dont-run-actions-on-draft-pull-requests/16817/17 + # That scenario would open an opportunity for the check to be bypassed: + # 1. Get your PR approved + # 2. Move it to Draft + # 3. Push whatever commits you want + # 4. Move it to "Ready for review"; now the workflow is passing (it was + # skipped) and "Check reviews" is also passing (it won't be updated + # until the workflow is finished) + if: github.event.pull_request.draft == true + run: exit 1 + - uses: actions/checkout@v3 - name: Install substrate dependencies run: sudo apt-get install libssl-dev pkg-config libclang-dev clang --- a/.github/workflows/node_build_test.yml +++ b/.github/workflows/node_build_test.yml @@ -74,7 +74,7 @@ RUST_TOOLCHAIN=${{ env.RUST_TOOLCHAIN }} POLKA_VERSION=${{ env.POLKA_VERSION }} FEATURE=${{ matrix.features }} - BRANCH=${{ github.head_ref }} + BRANCH=${{ github.event.pull_request.head.sha }} - name: Show build configuration run: cat .docker/docker-compose.${{ matrix.network }}.yml @@ -91,7 +91,6 @@ cd tests yarn install yarn add mochawesome - yarn --pure-lockfile echo "Ready to start tests" node scripts/readyness.js NOW=$(date +%s) && yarn test --reporter mochawesome --reporter-options reportFilename=test-${NOW} --- a/.github/workflows/tests_codestyle.yml +++ b/.github/workflows/tests_codestyle.yml @@ -13,13 +13,31 @@ runs-on: self-hosted-ci steps: - - uses: actions/checkout@v3 - - - uses: actions/setup-node@v3 - with: - node-version: 16 + - name: Skip if pull request is in Draft + # `if: github.event.pull_request.draft == true` should be kept here, at + # the step level, rather than at the job level. The latter is not + # recommended because when the PR is moved from "Draft" to "Ready to + # review" the workflow will immediately be passing (since it was skipped), + # even though it hasn't actually ran, since it takes a few seconds for + # the workflow to start. This is also disclosed in: + # https://github.community/t/dont-run-actions-on-draft-pull-requests/16817/17 + # That scenario would open an opportunity for the check to be bypassed: + # 1. Get your PR approved + # 2. Move it to Draft + # 3. Push whatever commits you want + # 4. Move it to "Ready for review"; now the workflow is passing (it was + # skipped) and "Check reviews" is also passing (it won't be updated + # until the workflow is finished) + if: github.event.pull_request.draft == true + run: exit 1 + + - uses: actions/checkout@v3 + + - uses: actions/setup-node@v3 + with: + node-version: 16 - - name: Install modules - run: cd tests && yarn - - name: Run ESLint - run: cd tests && yarn eslint --ext .ts,.js src/ + - name: Install modules + run: cd tests && yarn + - name: Run ESLint + run: cd tests && yarn eslint --ext .ts,.js src/ --- a/tests/scripts/readyness.js +++ b/tests/scripts/readyness.js @@ -24,7 +24,7 @@ break; } catch(e) { - await sleep(60000); + await sleep(10000); } } }