Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migration of Gitlab lint, check, workspace, examples stages to GitHub Actions #1950

Merged
merged 16 commits into from
Nov 7, 2023

Conversation

smiasojed
Copy link
Collaborator

@smiasojed smiasojed commented Oct 25, 2023

Summary

Related #1454

  • [n] y/n | Does it introduce breaking changes?
  • [n] y/n | Is it dependant on the specific version of cargo-contract or pallet-contracts?
    Migration of Gitlab lint, check, workspace stages to GitHub Actions

Description

Migrating the lint, check, workspace and examples stages to GitHub Actions.
The measurements and publish stages will be separate workflows.

Checklist before requesting a review

  • [y] My code follows the style guidelines of this project
  • [n] I have added an entry to CHANGELOG.md
  • [y] I have commented my code, particularly in hard-to-understand areas
  • [n] I have added tests that prove my fix is effective or that my feature works
  • [y] Any dependent changes have been merged and published in downstream modules

@paritytech-cicd-pr
Copy link

paritytech-cicd-pr commented Oct 25, 2023

🦑 📈 ink! Example Contracts ‒ Changes Report 📉 🦑

⚠️ The ink! master is ahead of your branch, this might skew the comparison data below. ⚠️
These are the results when building the integration-tests/* contracts from this branch with cargo-contract 4.0.0-alpha-f7dd92d and comparing them to ink! master:

Contract Upstream Size (kB) PR Size (kB) Diff (kB) Diff (%) Change
basic-contract-caller 2.967 2.967 0 0
basic-contract-caller/other-contract 1.337 1.337 0 0
call-builder-return-value 8.735 8.735 0 0
call-runtime 1.769 1.769 0 0
conditional-compilation 1.209 1.209 0 0
contract-storage 7.171 7.171 0 0
contract-terminate 1.092 1.092 0 0
contract-transfer 1.444 1.444 0 0
custom-allocator 7.428 7.428 0 0
dns 7.249 7.249 0 0
e2e-call-runtime 1.058 1.058 0 0
e2e-runtime-only-backend 1.635 1.635 0 0
erc1155 13.962 13.962 0 0
erc20 6.687 6.687 0 0
erc721 9.64 9.64 0 0
events 4.763 4.763 0 0
flipper 1.393 1.393 0 0
incrementer 1.221 1.221 0 0
lang-err-integration-tests/call-builder-delegate 2.317 2.317 0 0
lang-err-integration-tests/call-builder 4.847 4.847 0 0
lang-err-integration-tests/constructors-return-value 1.773 1.773 0 0
lang-err-integration-tests/contract-ref 4.328 4.328 0 0
lang-err-integration-tests/integration-flipper 1.571 1.571 0 0
mapping-integration-tests 7.685 7.685 0 0
mother 9.508 9.508 0 0
multi-contract-caller 5.924 5.924 0 0
multi-contract-caller/accumulator 1.095 1.095 0 0
multi-contract-caller/adder 1.669 1.669 0 0
multi-contract-caller/subber 1.689 1.689 0 0
multisig 21.471 21.471 0 0
payment-channel 5.501 5.501 0 0
sr25519-verification 0.865 0.865 0 0
static-buffer 1.405 1.405 0 0
trait-dyn-cross-contract-calls 2.466 2.466 0 0
trait-dyn-cross-contract-calls/contracts/incrementer 1.305 1.305 0 0
trait-erc20 7.063 7.063 0 0
trait-flipper 1.209 1.209 0 0
trait-incrementer 1.37 1.37 0 0
upgradeable-contracts/delegator 2.908 2.908 0 0
upgradeable-contracts/delegator/delegatee 1.369 1.369 0 0
upgradeable-contracts/set-code-hash 1.464 1.464 0 0
upgradeable-contracts/set-code-hash/updated-incrementer 1.443 1.443 0 0
wildcard-selector 2.622 2.622 0 0

Link to the run | Last update: Tue Nov 7 09:47:26 CET 2023

@codecov-commenter
Copy link

codecov-commenter commented Oct 25, 2023

Codecov Report

Merging #1950 (5c7ae8a) into master (ccb38d2) will not change coverage.
Report is 5 commits behind head on master.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1950   +/-   ##
=======================================
  Coverage   53.31%   53.31%           
=======================================
  Files         219      219           
  Lines        6831     6831           
=======================================
  Hits         3642     3642           
  Misses       3189     3189           

see 2 files with indirect coverage changes

📣 Codecov offers a browser extension for seamless coverage viewing on GitHub. Try it in Chrome or Firefox today!

.github/workflows/ci.yml Outdated Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
Copy link
Contributor

@sergejparity sergejparity left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

^^^ The same

@smiasojed smiasojed marked this pull request as ready for review October 26, 2023 11:37
@smiasojed smiasojed changed the title Migration of Gitlab lint, check, workspace stages to GitHub Actions Migration of Gitlab lint, check, workspace, examples stages to GitHub Actions Oct 27, 2023
.github/workflows/ci.yml Outdated Show resolved Hide resolved
Copy link
Contributor

@sergejparity sergejparity left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's better to manage image used for CI from one place - global env. Will help when time to update will come.

.github/workflows/ci.yml Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
.github/workflows/ci.yml Outdated Show resolved Hide resolved
@smiasojed
Copy link
Collaborator Author

It's better to manage image used for CI from one place - global env. Will help when time to update will come.

You are right @sergejparity, but I couldn't get GHA to use the environment variable in this context (container). It appears that, in this context, environment variables are not being handled.

Co-authored-by: Sergejs Kostjucenko <[email protected]>
@sergejparity
Copy link
Contributor

sergejparity commented Oct 31, 2023

It's better to manage image used for CI from one place - global env. Will help when time to update will come.

You are right @sergejparity, but I couldn't get GHA to use the environment variable in this context (container). It appears that, in this context, environment variables are not being handled.

@smiasojed yes, looks like it doesn't work as expected.
Still it is possible to assign image from env, but it is not that straightforward. Need to create a job which reads env variable and puts it in its own outputs.
Something like this:

env:
  IMAGE: paritytech/ci-unified:bullseye-1.73.0

jobs:
  set-image:
    runs-on: ubuntu-latest
    outputs:
      IMAGE: ${{ steps.set_image.outputs.IMAGE }}
    steps:
    - id: set_image
      run: echo "IMAGE=${{ env.IMAGE }}" >> $GITHUB_OUTPUT


  use-image:
    runs-on: ubuntu-latest
    needs: [set-image]
    container:
      image: ${{ needs.set-image.outputs.IMAGE }}
      ....

So up to you, whether to use it or not.

Copy link
Collaborator

@ascjones ascjones left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@smiasojed smiasojed merged commit 745b08a into master Nov 7, 2023
43 checks passed
@smiasojed smiasojed deleted the sm/github-ci branch November 7, 2023 09:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants