-
Notifications
You must be signed in to change notification settings - Fork 304
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
HPCC-30710 Refactor Smoketest GH Action #18007
HPCC-30710 Refactor Smoketest GH Action #18007
Conversation
Signed-off-by: Gordon Smith <[email protected]>
https://track.hpccsystems.com/browse/HPCC-30710 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also need to finalize the push / read cache logic (all in vcpkg-build):
- Add
schedule
to all triggers - Enable push when
trigger
==schedule
secrets: inherit | ||
|
||
build-docker-ubuntu-23_10: | ||
if: ${{ contains('pull_request,push', github.event_name) }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remove ,push
from this entire file (was only used for testing on my forked repo)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can leave the ",push" and remove the global push trigger (as its handy for local testing)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TODO
Also remove all other instances of "GH Action Caching" in other workflows (and remove obsolete workflows) |
Maybe we should report to GitHub that PRs can write to the cache, which would be a security risk? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I scanned through it, and it all looks clean and easy to understand. Likely to make it much easier for other people to be able to extend and pick up.
A couple of trivial comments from me, and your own comments about removing push and unneeded files.
default: false | ||
strip-files: | ||
type: boolean | ||
description: 'Single Package' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
update the description?
.github/workflows/build-docker.yml
Outdated
default: false | ||
strip-files: | ||
type: boolean | ||
description: 'Single Package' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
trivial: out of date description
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@GordonSmith - looks like a very good improvement.
I didn't spot any problems, but a few questions about need for some runs, e.g. same package target type build (and tested) in docker framework and runner framework.
With 10GB of cache, anything we can do to reduce the cache usage, will result in increased cache hits, and should therefore result in faster builds (particularly when there's a lot of concurrent PR or tags in flight).
It would be good if there was a readme.md in .github/workflows describing what, why and when each action/workflow_call was used.
|
||
build-gh_runner-ubuntu-22_04: | ||
if: ${{ contains('pull_request,push', github.event_name) }} | ||
uses: ./.github/workflows/build-gh_runner.yml |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not clear why ubuntu-22.04 is being built by build-docker-ubuntu-22_04: and this ?
Shouldn't a target be either built by build-gh_runner.yml or build-docker.yml? e.g. if windows or macos, no choice but to build under runner..
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was a sanity check for myself - annoyingly it is failing a bunch of regression tests, but I havn't dug into why that is the case yet.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed now (gh-runner and docker both pass all tests)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
but shouldn't it be changed so a particular target either builds under runner or docker before this is merged?
( to reduce the # of jobs/runners in flight etc. )
asset-name: 'gh_runner-package' | ||
secrets: inherit | ||
|
||
build-gh_runner-ubuntu-20_04: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
as per previous questions, why build packages via docker ('build-docker-ubuntu-20_04:'), and here under runner ?
fb4fb59
to
012b7b1
Compare
012b7b1
to
bc3249a
Compare
Signed-off-by: Gordon Smith <[email protected]> WIP WIP WIP
ed00b3e
to
5f49b7f
Compare
export CLASSPATH=".:$(realpath selenium-server-standalone-3.141.59.jar):$(realpath testng-6.8.7.jar)" | ||
pushd ${{ inputs.asset-name }}-ui_test-files | ||
./run.sh tests http://localhost:8010 > eclWatchUiTest.log 2>&1 | ||
sudo ./run.sh tests http://localhost:8010 > eclWatchUiTest.log 2>&1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
question: curious why new sudo now needed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@GordonSmith - 1 minor question, and a followup q. from previous conv. re. building package targets under both docker and runner
f60821d
into
hpcc-systems:candidate-9.4.x
Type of change:
Checklist:
Smoketest:
Testing: