Skip to content

Test workflow without cache keys#131

Merged
MarcoPolo merged 9 commits intomarco/update-tests-to-specfrom
marco/no-keys
Feb 10, 2023
Merged

Test workflow without cache keys#131
MarcoPolo merged 9 commits intomarco/update-tests-to-specfrom
marco/no-keys

Conversation

@MarcoPolo
Copy link
Copy Markdown
Contributor

Might make sense to have this as a permanent workflow so that we make sure this doesn't break.

Draft for now as I fiddle with CI

@MarcoPolo
Copy link
Copy Markdown
Contributor Author

Leaning towards not including the no-cache workflow. If this fails without cache we'll know from the failed CI run, so skipping it to avoid the 20+min CI runs.

@MarcoPolo MarcoPolo marked this pull request as ready for review February 10, 2023 18:37
@MarcoPolo
Copy link
Copy Markdown
Contributor Author

Changed my mind. We can skip the actual tests, and the check to make sure the images build without cache should take roughly the same amount of time. And this only happens to changes in this repo. If it's annoying we can remove it later, but for now it makes me feel a little better to know we are testing this code path.

Copy link
Copy Markdown
Contributor

@thomaseizinger thomaseizinger left a comment

Choose a reason for hiding this comment

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

Thanks! Some nits, nothing blocking :)


- name: Configure AWS credentials for S3 build cache
if: ${{ inputs.s3-access-key-id }} != "" && ${{ inputs.s3-secret-access-key }} != ""
if: inputs.s3-access-key-id != '' && inputs.s3-secret-access-key != ''
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

GitHub actions syntax is so subtle it is really annoying. Maybe I should pick up my idea of writing a linter for this again ...

My first guess at what is wrong here would have been:

Suggested change
if: inputs.s3-access-key-id != '' && inputs.s3-secret-access-key != ''
if: ${{ inputs.s3-access-key-id != '' }} && ${{ inputs.s3-secret-access-key != '' }}

- uses: ./.github/actions/run-interop-ping-test
with:
# It's okay to not run the tests, we only care to check if the tests build without cache.
test-filter: "no test matches this, skip all"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Clever!

@@ -0,0 +1,19 @@
on:
workflow_dispatch:
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Do we need this?

Suggested change
workflow_dispatch:

Comment on lines +3 to +6
pull_request:
push:
branches:
- "master"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

We share the same triggers with the other workflow right? Why not have it in the other file as a separate job?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I wanted it to run in parallel and isolated. Is that the case with a separate job?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Yes jobs run in parallel in a workflow unless you declare a dependency with needs:

Comment on lines +12 to +14
docker buildx build \
--load \
-t $IMAGE_NAME "$@"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Would it make sense to do something like:

Suggested change
docker buildx build \
--load \
-t $IMAGE_NAME "$@"
docker buildx build \
--load \
$CACHING_OPTIONS \
-t $IMAGE_NAME "$@"

Where $CACHING_OPTIONS is conditionally defined instead of the entire command?

@MarcoPolo MarcoPolo merged commit 6d1aed2 into marco/update-tests-to-spec Feb 10, 2023
MarcoPolo added a commit that referenced this pull request Feb 11, 2023
)

* Update Go test implementations to match new spec

* Update JS test implementation

* Update Rust test Implementation

* Update root Makefile

* Update runner to new spec

* Use composite action and S3 caching

* Not using GHA cache anymore

* Try removing access key from env

* Test workflow without cache keys (#131)

* Test if it works without s3 cache keys

* Fix if statement

* Fix if statement

* Always use buildkit

* Undo debug change

* Add no cache workflow

* Skip test in no-cache workflow

* Update .github/workflows/no-cache-multidim-interop.yml

* Same workflow; use CACHING_OPTIONS

* Add Browser WebRTC test (#130)

* Add webrtc to JS test

* Add onlyDial to all queries

* Update versions.ts

* Remove unneeded timeout overrides
codemaestro64 pushed a commit to codemaestro64/test-plans that referenced this pull request Oct 28, 2025
…ibp2p#121)

* Update Go test implementations to match new spec

* Update JS test implementation

* Update Rust test Implementation

* Update root Makefile

* Update runner to new spec

* Use composite action and S3 caching

* Not using GHA cache anymore

* Try removing access key from env

* Test workflow without cache keys (libp2p#131)

* Test if it works without s3 cache keys

* Fix if statement

* Fix if statement

* Always use buildkit

* Undo debug change

* Add no cache workflow

* Skip test in no-cache workflow

* Update .github/workflows/no-cache-multidim-interop.yml

* Same workflow; use CACHING_OPTIONS

* Add Browser WebRTC test (libp2p#130)

* Add webrtc to JS test

* Add onlyDial to all queries

* Update versions.ts

* Remove unneeded timeout overrides
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.

2 participants