Commit Graph

40 Commits

Author SHA1 Message Date
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 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
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 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 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
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 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
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
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
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
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 7abb7ccf60 Add Bucket e2e tests 2020-09-18 16:11:24 +03:00
Hidde Beydals eaec41f6e9 e2e: test HelmChart ValuesFile 2020-09-11 13:33:08 +02: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
stefanprodan d27cc96233 Reconcile sources in the runtime namespace only 2020-05-03 13:04:00 +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
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