Create CI infrastructure in GitHub Actions
Signed-off-by: Israel Blancas [email protected]
What this PR does / why we need it:
- Fixes #335: CI is not run in PRs
- Use GitHub Actions for the CI
- Add a job for the unit tests (missing in the CircleCI automation)
Some notes
- Create as a draft because I need to add a workflow to create releases
@kensipe, do you want me to remove the .circleci folder?
oh.. nice! We may want to give a heads up and align with kudo... but would limit this to < a week. I don't see any challenges but want to allow for alignment time.
and to answer the question.. yes! we should remove .circleci as part of this transition
Nice stuff!
Ok, nice.
Another question: do you want to create a GitHub workflow for the releases or do you want to keep the process explained in RELEASE.md?
it would be much nicer to have releases off github actions.
some details that may not be on the release doc. I build a docker build with buildx (multi-arch support) and push to docker hub. This is to support Operator SDK score card. It would be wonderful to automate all the things.
I see all the details are there either on the release doc.. or linked from it.
this is marked "Draft"... let me know when you're ready. It looks good. I expect we want to pull from circleci... is that the only thing left to change? I would suggest that we can have additional features (like the release process) on a separate PR. Thanks for this!
@iblancasa checking to see if this is ready?
@iblancasa do you think that is ready?
renewed interest in this... I can take it over if needed
@kensipe I can finish it if you want. It seems @eddycharly started something in #423
I didn't know about this PR, I made something super simple (only runs the linter and unit tests). I failed to get integration tests working because TestEnv startup failure :(
Ok, this PR was originally to create the releases too. How about just fixing the PRs and create another PR for the releases?
@iblancasa your PR looks great, are we going to merge it ? Creating release can come in another PR IMHO. This is critical to get CI running on PRs.
@eddycharly if everyone agrees, we can merge it.
I just pushed the branch with the latest changes. Also, removed the draft status.
Outch all is red !
This would be great to have !
@eddycharly I'm trying to fix it. It'll take a while...
@kensipe @eddycharly ready for review. Sorry because I messed up something with a merge and I had to do some pushes...
very interested in this PR and those related. I will be reviewing today and pushing to merge asap
I agree about the upgrades and everything but, as I pointed in this comment, https://github.com/kudobuilder/kuttl/pull/337#discussion_r1027304407 this PRs is just porting the CI from one system to another.
agree with @erikgb however I'm good with landing this and removing circle in a separate PR. reviewing... however we will likely want to review the actual experience. Reviewing content now.
More importantly I think we should swith to kind or something closer to a real cluster. IMHO, running api server and etcd only is not enough.
@eddycharly we use api-server and etc for integration tests... we use kind for e2e tests... it seems we are covered there
Actions to follow: https://github.com/kudobuilder/kuttl/issues/427 https://github.com/kudobuilder/kuttl/issues/428 https://github.com/kudobuilder/kuttl/issues/429
we use kind for e2e tests
where does this happen ?
In the e2e logs:
harness.go:220: started test environment (kube-apiserver and etcd) in 4.821556848s