Commit Graph

213 Commits

Author SHA1 Message Date
Stefan Prodan e0eb0aa034
ci: Remove the macOS runner
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2023-03-30 13:23:54 +03:00
Hidde Beydals 1e48942c64
build: enable Dependabot for GitHub Actions
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-03-29 16:47:11 +02:00
Hidde Beydals bc1615cdcc
build: update workflow dependencies
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-03-29 16:46:26 +02:00
Hidde Beydals 4081e4bc2f
build: update verify workflow
- Update actions to their latest versions.
- Use SHA to (potentially) allow enabling Dependabot.
- Move caching responsibility to `actions/setup-go` (supported since
  >=v3).

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-03-21 14:16:39 +01:00
Hidde Beydals 85bde48a7e
build: update tests workflow
- Update actions to their latest versions.
- Use SHA to (potentially) allow enabling Dependabot.
- Add Go Modules caching using  `actions/setup-go` (supported since
  >=v3).

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-03-21 14:16:03 +01:00
Hidde Beydals 40ab611fc2
build: update scan workflow
- Update actions to their latest versions.
- Use SHA to (potentially) allow enabling Dependabot.
- Add Go Modules caching using  `actions/setup-go` (supported since
  >=v3).

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-03-21 14:14:09 +01:00
Hidde Beydals 4286a7a254
build: update release workflow
- Update actions to their latest versions.
- Use SHA to (potentially) allow enabling Dependabot.

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-03-21 14:12:14 +01:00
Hidde Beydals ccaaded0b9
build: update e2e workflow
- Update actions to their latest versions.
- Use SHA to (potentially) allow enabling Dependabot.

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-03-21 14:08:53 +01:00
Hidde Beydals 00f737a481
build: update e2e workflow
- Update actions to their latest versions.
- Use SHA to (potentially) allow enabling Dependabot.
- Move caching responsibility to `actions/setup-go` (supported since
  >=v3).

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-03-21 14:07:15 +01:00
Hidde Beydals 402412b40d
build: update cifuzz workflow
- Update actions to their latest versions.
- Use SHA to (potentially) allow enabling Dependabot.
- Move caching responsibility to `actions/setup-go` (supported since
  >=v3).

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-03-21 14:05:29 +01:00
Hidde Beydals f0a58e015c
build: update nightly workflow
- docker/build-push-action to v4
- Drop `platforms` from `docker/setup-qemu-action` step, as this is
  the default.

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-03-07 17:57:50 +01:00
Hidde Beydals 782b5fbcf1
build: update release workflow
- docker/build-push-action to v4
- sigstore/cosign-installer to v3
- goreleaser/goreleaser-action to v4

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-03-07 17:36:04 +01:00
Hidde Beydals 8dd9d2d7e8
Update Go to 1.20
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-03-02 15:20:36 +01:00
Hidde Beydals 7ee3c2c3e9 build: convert ::set-output to $GITHUB_OUTPUT
Signed-off-by: Hidde Beydals <hello@hidde.co>
2023-02-17 14:10:19 +01:00
Stefan Prodan 7814754bb7
CI: Replace engineerd/setup-kind with helm/kind-action
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2023-01-30 18:25:09 +02:00
Stefan Prodan 59e061c8ef
build: Enable SBOM and SLSA Provenance
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2023-01-27 16:45:41 +02:00
Hidde Beydals 2af954135a darwin-amd64: setup Docker using Colima
Ref: https://github.com/abiosoft/colima/blob/main/docs/FAQ.md#cannot-connect-to-the-docker-daemon-at-unixvarrundockersock-is-the-docker-daemon-running

Signed-off-by: Hidde Beydals <hello@hidde.co>
2022-12-14 14:11:37 +00:00
Paulo Gomes 7a5e6f75f1
build: Disable macos-11
This specific environment seems to be more prone to a data race
that is already fixed on the git-refactoring branch. Whilst those
changes are not merged into main, let's disable this environment
to quieten the unnecessary noise.

Note that this test only exists to ensure that contributors using
macos-11 as their development environment don't experience
issues building and debugging the project.

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-10-20 10:01:22 +01:00
Paulo Gomes 6c06f4e222
The libgit2 libraries are downloaded and verified before
some of the make targets are executed. This assures the
provenance of such files before using them and is very
important specially for end users running such tests on
their machines.

Note that has been disabled specially due to recent issues
we experienced at CI which can be seen in:
fluxcd/source-controller#899

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-09-29 07:01:36 +01:00
Stefan Prodan ca3496e758
Build with Go 1.19
- Update Go to 1.19 in CI
- Use Go 1.19 in base image
- Update controller-gen v0.8.0 and regenerate manifests

Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2022-09-28 15:35:26 +03:00
Stefan Prodan 87b8efa02f
CI: Revert Public ECR push
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2022-09-09 11:23:39 +03:00
Stefan Prodan 8216175daa
CI: Set Public ECR region to us-east-1
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2022-09-07 18:46:49 +03:00
Stefan Prodan 3da8bf27b0
Publish container images to AWS Public ECR
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2022-09-07 10:41:23 +03:00
Paulo Gomes 976f4bb3fb
fuzz: Fix cache path
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-09-03 03:59:03 +01:00
Paulo Gomes c2353a7fe6
fuzz: Ensure Go 1.18 for fuzz image
- Upgrade fuzz container to Go 1.18.
- Upgrade worker to Go 1.18.
- The mod replace in tests/fuzz was pointing to the wrong controller.

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-08-23 08:40:01 +01:00
Paulo Gomes 2ea8896c0b
build: Ignore CI workflows for markdown files
Running all CI tests at pull requests for some files is sub-optimal,
when a PR contain changes to a single file not checked by the tests.

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-08-08 16:22:45 +01:00
Philip Laine 0d633470eb Update Azure Go SDK
Signed-off-by: Philip Laine <philip.laine@gmail.com>
2022-08-01 23:53:53 +02:00
Stefan Prodan f2772eb9d3
Update Go to 1.18 in CI
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2022-07-27 19:02:19 +03:00
Max Jonas Werner 060d52d5f1
remove MacOS 10.15 from testing matrix
This version is not supported, anymore. More info at
https://github.com/actions/virtual-environments/issues/5583

Signed-off-by: Max Jonas Werner <max@e13.dev>
2022-07-27 12:21:16 +02:00
Paulo Gomes c12a56a8a7
build: disable matrix fail-fast
Intermittent issues are causing the test matrix to fail
and whenever that happens, all other matrix options are
automatically cancelled. This increases the amount of
retries needed in order to get all tests to pass.

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-07-20 12:10:23 +01:00
Paulo Gomes 3635f44b5b
build: run darwin tests on macos 10.15, 11 and 12
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-07-06 13:52:53 +01:00
Paulo Gomes 6981eba031
build: split GitHub workflows
By splitting workflows we can get the overall time
for all the checks to be decreased.

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-07-01 11:58:08 +01:00
Paulo Gomes 230774cc80
build: disable go test -race for arm64
Race detection is not working properly in our arm64 runners.
It has been tested against both M1 and linux arm64 machines
and in both cases the results were aligned with the other
platforms.

By disabling this we can ensure race detection is being
enforced on the other platforms, and we can later review
this position.

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-06-14 11:33:36 +01:00
Paulo Gomes e35eb7398d
Update GH Actions
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-05-26 14:57:34 +01:00
Hidde Beydals d17e724124 build: properly wire integration tests
- Ensure secrets are set as env variables
- Wire `GO_TAGS` together with `GO_STATIC_FLAGS`

Signed-off-by: Hidde Beydals <hello@hidde.co>
2022-03-11 10:43:35 +01:00
Hidde Beydals d55a75930c Enable Azure integration tests
Tests are configured in such a way that they only run for `main`.

Signed-off-by: Hidde Beydals <hello@hidde.co>
2022-03-03 14:03:00 +01:00
Paulo Gomes 514126c4b8
Fix make test on arm64 runners
The environment variables set at the Makefile were causing go install to
yield a corrupted file for setup-envtest. To fix the issue, such operation
is now always executed in a clean bash.

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-02-16 10:17:33 +00:00
Paulo Gomes fcb62eedc7
Validate LIBGIT2 args are set correctly
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-02-09 15:52:46 +00:00
Paulo Gomes d8da814d2e
Initial fuzzing tests
This PR refactors and supersedes: https://github.com/fluxcd/source-controller/pull/443

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
Co-authored-by: Sanskar Jaiswal <sanskar.jaiswal@weave.works>
Co-authored-by: AdamKorcz <adam@adalogics.com>
2022-02-08 17:49:34 +00:00
Paulo Gomes 80e1d243e6
Upgrade to libgit2-1.1.1-6
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-02-08 10:51:20 +00:00
Paulo Gomes c5e2e5e30b
Add make test execution for macos-10.15
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-02-07 18:36:18 +00:00
Paulo Gomes 990b4a361b
Use static libraries from built image
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-02-07 13:00:55 +00:00
Soule BA 53fa1f9e3e
Add Permissions to github Workflows
Imrove GITHUB_TOKEN permissions in the workflows.

Signed-off-by: Soule BA <soule@weave.works>
2022-01-20 18:01:49 +01:00
Stefan Prodan b992afd2c7
Publish SBOM and sign release artifacts
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2022-01-20 13:49:36 +02:00
Sanskar Jaiswal 2b8ede12cc fix makefile envtest and controller-gen usage
Refactor logic to install helper tools into one function in the
Makefile. Add support for envtest to help install tools like kubectl,
etcd which helps users run tests more conveniently.

Signed-off-by: Sanskar Jaiswal <sanskar.jaiswal@weave.works>
2022-01-13 16:48:04 +05:30
Paulo Gomes ab934579bb
Bump libgit2 dependencies to debian bookworm
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-01-13 10:16:15 +00:00
Paulo Gomes b91f49cdcf
Use golang 1.17 for e2e tests
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-01-13 10:16:14 +00:00
Paulo Gomes a53cae97ac
Set go version to 1.16
make verify is failing 'go mod tidy: go.mod file indicates go 1.16, but maximum supported version is 1.15' which indicates that the default go version on the runner is 1.15.

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-01-13 10:16:12 +00:00
Paulo Gomes 7abe7591f4
Add make verify
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-01-13 10:16:10 +00:00
Paulo Gomes 0c9078c5d1
Bump LIBGIT2_TAG to libgit2-1.1.1-2
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-01-13 10:16:09 +00:00
Paulo Gomes f6029ab0f6
Set MINIO tag that supports arm64
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-01-13 10:16:06 +00:00
Paulo Gomes 7608449c3b
Add arm64 test ci tests
Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-01-13 10:16:06 +00:00
Paulo Gomes a76cef6bde
Extract e2e tests from github actions
Enable users to run the exact same tests locally as they would be executed
as part of their PRs.

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-01-13 10:16:05 +00:00
Aurel Canciu e3d04b31bc
Update Go to v1.17
Signed-off-by: Aurel Canciu <aurelcanciu@gmail.com>
2021-12-20 13:11:21 +01:00
Hidde Beydals dd091a00ae build: update tonistiigi/xx to v1.1.0
https://github.com/tonistiigi/xx/releases/tag/v1.1.0

Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-12-10 12:25:14 +01:00
Hidde Beydals 16320c73f1 build: update Go to 1.16.12
Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-12-10 12:24:34 +01:00
Hidde Beydals 2ffd15a548 Update fluxcd/golang-with-libgit2 to 1.1.1-1
This includes a tiny fix for Darwin to ensure the generated `.pc`
file includes the right paths.

Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-10-08 15:50:55 +02:00
Hidde Beydals a871e0b527 Update Dockerfile used in tests as well
This ensures the Dockerfile used for testing is making use of the
same scratch image to compile `libgit2` as the actual application
image.

In a future iteration we should restructure our GitHub Action
workflows to re-use the application image, saving us an additional
Dockerfile and a duplicate build. Inspiration for this (which makes
use of a local registry for the duration of the build) can be found
at: https://github.com/fluxcd/golang-with-libgit2/blob/main/.github/workflows/build.yaml

Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-10-08 09:38:20 +02:00
Hidde Beydals 9fd16d8e45 Switch to scratch based libgit2 container image
This moves the `libgit2` compilation to the image, to ensure it
can be build on builders that aren't backed by AMD64.

The image is structured in such a way that e.g. running nightly
builds targeting a different Go version, or targeting a different
OS vendor would be possible in the future via build arguments.

Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-10-08 09:38:20 +02:00
Hidde Beydals 981d91e363 Update base image to version with Darwin detection
To provide a better (contributing) experience to those with Apple
machines, as determining the correct paths there is a bit harder.

Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-10-01 19:08:59 +02:00
Hidde Beydals 0358ebc43d Change image to image under Flux organization
Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-09-30 16:37:05 +02:00
Hidde Beydals 7a212b6570 Add `docker-buildx` target to `Makefile`
To allow building a multi-platform container image using `buildx`.

Various configuration flags allow for fine(r)-grain control over the
build process:

- `BASE_IMG`: FQDN of the base image that should be used, without a
  tag.
- `BASE_TAG: tag of the base image that should be used. Allows checksum
  sum to be included.
- `BUILDX_PLATFORMS`: platforms to target for the final container
  image.
- `BUILDX_ARGS`: additional `docker buildx build` arguments, e.g.
  `--push` to push the result to a (local) image registry.

Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-09-30 16:37:05 +02:00
Hidde Beydals d3c27c37f8 Update github.com/libgit2/git2go to v31.6.1
This commit updates `github.com/libgit2/git2go` to `v31.6.1` (with
`libgit2` `1.1.1`), and changes the container image build process so
that it makes use of `ghcr.io/hiddeco/golang-with-libgit2`.

This image provides a pre-build dynamic `libgit2` dependency linked
against OpenSSL and LibSSH2 (without gcrypt), and a set of cross-compile
build tools (see
[rationale](https://github.com/hiddeco/golang-with-libgit2#rationale) and
[usage](https://github.co/hiddeco/golang-with-libgit2#usage) for more
detailed information).

The linked set of dependency should solve most known issues around
unsupport private key types, but does not resolve the issues with ECDSA*
and ED25519 hostkeys yet. Solving this requires a newer version of
`libgit2` (`>=1.2.0`), which currently does not seem to work properly
with `git2go/v32`.

Some small changes have been made to the `libgit2` package to address
(future) deprecations.

Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-09-30 16:36:20 +02:00
Sunny cb3fb3bb4e
workflows/e2e: Use fluxcd/pkg/actions/envtest
Use fluxcd/pkg/actions/envtest to setup envtest.

Since the run-test action runs in a container, the host $PATH is not
passed to the test container. The ENV directive in actions/run-tests
Dockerfile is used to append the PATH with envtest binary path. This
helps avoid redownload of the envtest binaries when it's not found in
the path via the Makefile targets.

Signed-off-by: Sunny <darkowlzz@protonmail.com>
2021-08-01 21:07:27 +05:30
Stefan Prodan 25a2428b80
Print pods status on e2e failures
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-06-29 16:40:15 +03:00
Hidde Beydals fdb0a0b8c1 Use Debian Slim image in GitHub action
Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-06-22 13:01:31 +02:00
Hidde Beydals 8acb8cd688 Use `github.repository` property for image name
As the `github.event.repository.name` property is not always available,
for example when the action gets triggered by a cron job.

Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-06-09 11:49:20 +02:00
Stefan Prodan 203263fcfd
Add nightly builds workflow
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-06-08 19:42:46 +03:00
Stefan Prodan 2819924c78
Add e2e tests for large Git repositories
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-06-02 12:45:38 +03:00
Hidde Beydals d3bcc6a66b Update Go to 1.16
This commit updates Go to 1.16, a required change because of the use of
`os.WriteFile` in one of the tests introduced by commit
b5004a93bc.

Normally _just_ this would not justify the change, but given the
introduction of breaking changes (and thereby forcing a MINOR update
anyway), and the various file{system, path} improvements introduced in
Go 1.16 like
[`filepath#WalkDir`](https://golang.org/pkg/path/filepath/#WalkDir),
going ahead with this should be fine.

Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-04-13 16:35:41 +02:00
Stefan Prodan fd13ebdcf0
Add CodeQL scanning
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-03-12 12:44:39 +02:00
Stefan Prodan 2ef7904c9d
Normalise release workflow
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-03-12 12:41:57 +02:00
Stefan Prodan 2dce2174a2
Fix release workflow
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-02-23 15:55:56 +02:00
Stefan Prodan 280bbaa69d
Refactor release workflow
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-02-23 14:38:11 +02:00
Hidde Beydals 74363f3d5e Publish as single multi-arch Docker image
This commit bundles the `source-controller:$VER-arm64` ARM image tag
range that was previously released separately with the
`source-controller:$VER` image, as GitHub now provides us insights into
image layer statistics.

Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-01-11 12:59:14 +01:00
Hidde Beydals 3feda81109 Tweak `musl` and `libgit2{-dev}` dependencies
* Use semver tidles to deal with future patch releases
* Install just `libgit2` in runtime container
* Add TODO / explanation for `musl` `1.2.x` dependency

Signed-off-by: Hidde Beydals <hello@hidde.co>
2020-12-10 00:05:58 +01:00
Hidde Beydals 38e2e58c54 Use semver tidle range for `libgit2-dev` package
Signed-off-by: Hidde Beydals <hello@hidde.co>
2020-12-09 17:00:17 +01:00
Philip Laine 6344528e4f Fix smaller issues
Signed-off-by: Philip Laine <philip.laine@gmail.com>
2020-12-02 20:18:29 +01:00
Philip Laine 873c349647 Add libgit2 dev dependencies
Signed-off-by: Philip Laine <philip.laine@xenit.se>
2020-12-02 20:18:29 +01:00
Philip Laine 00b4010096 Add libgit2 to test dockerfile
Signed-off-by: Philip Laine <philip.laine@xenit.se>
2020-12-02 20:18:29 +01:00
Aurel Canciu 27420c0454
Use golang image to run tests step
Signed-off-by: Aurel Canciu <aurelcanciu@gmail.com>
2020-11-27 15:00:54 +02:00
Stefan Prodan be818469ea
Print controller logs in CI
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2020-11-12 17:02:40 +02:00
Stefan Prodan ef5749105d
Update engineerd/setup-kind to v0.5.0
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2020-11-12 12:07:35 +02:00
Aurel Canciu ad995d80cc
Reorganize helm chart testdata for controllers
Signed-off-by: Aurel Canciu <aurelcanciu@gmail.com>
2020-10-28 14:57:12 +02:00
Stefan Prodan ea976cf63a
Update fossa action
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2020-10-28 13:59:03 +02:00
Hidde Beydals 335a091f60 Use GitHub actions from fluxcd/pkg@main
As `master` was replaced with `main`.
2020-10-06 10:37:15 +02:00
Hidde Beydals f7ceac644d e2e: use podinfo chart for valuesfile tests 2020-10-06 10:37:15 +02:00
stefanprodan f81b479382 Set default branch to main
Signed-off-by: stefanprodan <stefan.prodan@gmail.com>
2020-10-05 15:42:37 +03:00
stefanprodan f16e5f041a Promote API to v1beta1 2020-09-30 16:11:00 +03:00
Hidde Beydals ac84c70a4c ci: pin Minio to v6.3.1
Due to corrupt v7.0.0 chart release.
2020-09-22 12:27:46 +02:00
Hidde Beydals 1798b200c9 e2e: test HelmChart from Bucket 2020-09-21 12:40:15 +02:00
stefanprodan d55417b9b2 Publish ARM v7/v8 multi-arch image to GHCR 2020-09-21 09:50:23 +03:00
Hidde Beydals 0d50de8aca
Merge pull request #149 from fluxcd/fossa-scan
FOSSA scan enabled
2020-09-18 16:07:07 +02:00
stefanprodan 7abb7ccf60 Add Bucket e2e tests 2020-09-18 16:11:24 +03:00
Hidde Beydals 40ddf3c731 FOSSA scan enabled 2020-09-18 14:28:38 +02:00
Hidde Beydals 2576c739f4 ci: add sanity check for container images
Fail build if container images have been pushed with corrupted layers
and enable buildx debug logs.
2020-09-18 13:41:59 +02:00
Hidde Beydals eaec41f6e9 e2e: test HelmChart ValuesFile 2020-09-11 13:33:08 +02:00
Hidde Beydals f08febdffa Bump build-push-action version 2020-09-10 14:21:16 +02:00
stefanprodan d927a1e4aa Publish amd64/arm64 images to GHCR 2020-09-04 13:41:50 +03:00
stefanprodan 34dd00d5d8 Fix release GH action 2020-07-31 10:01:02 +03:00
Michael Bridgen 44fc115a3a Remove local actions and use those from fluxcd/pkg 2020-07-24 12:20:08 +01:00
stefanprodan 7e2fe14efa Upgrade CRDs to apiextensions.k8s.io/v1 2020-07-20 12:21:34 +03:00
Hidde Beydals c58bd7931f Use Docker organization secrets in build 2020-07-13 23:21:30 +02:00
stefanprodan d27cc96233 Reconcile sources in the runtime namespace only 2020-05-03 13:04:00 +03:00
stefanprodan 379729cb8b ci: Extract tag from GITHUB_REF 2020-04-16 14:55:55 +03:00
stefanprodan 71272ef7d9 ci: use go 1.14 2020-04-13 20:40:36 +03:00
stefanprodan 3bd15423e4 ci: Check if working tree is dirty
- run unit tests in a dedicated CI step
- check if working tree is dirty and fail CI build
2020-04-13 20:23:58 +03:00
stefanprodan caedca3598 ci: Add release workflow
- create GitHub release and link to changelog
- build and push container image to Docker Hub
- build kustomization and upload asset to GitHub release
2020-04-13 18:28:22 +03:00
Hidde Beydals d378bd1852 Introduce HelmChart API and controller
- Add the HelmChart types and controller
- Semver expressions are found by utilizing Helm repository index
  helpers. As Helm makes use of `masterminds/semver`, the support
  for i.e. ranges less mature than the `GitRepository` implementation.
- Recorded semver is as defined in the metadata of the chart. The
  used name for the artifact does however include the checksum of the
  chart archive, as chart maintainers may not always properly apply
  semver.
- Switches to `sigs.k8s.io/yaml` for YAML operations as this among
  other things is able to properly unmarshal embedded structures.
- Directly requeues on transient errors instead of using the defined
  interval as a back-off strategy is applied on repeated failures.
2020-04-12 18:44:37 +02:00
Hidde Beydals 4d30a82ef4 Rename project to source-controller 2020-04-08 16:12:17 +03:00
stefanprodan d4b9e17800 Move dev deploy script to Makefile 2020-04-08 15:14:32 +03:00
stefanprodan 065825c12d Add smoke tests to CI 2020-04-08 14:26:07 +03:00
stefanprodan 86c2c9f745 Implement CI with GitHub Actions 2020-04-08 14:17:06 +03:00