* fix: namespace logic cleanup and test isolation
- Pulls logic for defaulting to active namespace (K8S) moved UP to CLI during
flag default calculation.
- Pushes logic of deciding between f.Namespace vs f.Deploy.Namespace down into
implementations.
- Updates some tests which needed to have their environment cleared.
- Refactors Pipelines tests to use client API.
- Removes namespaces as a state variable all structures, instead passing as
an argument.
- Moves FromTempDirectory to testing package for use outside cmd.
* fix spelling errors
* fix: pipelines remover always returned (empty) error
* update tekton namespace handling
* fix: remove deprecated GitLab config: max_concurrency
* fix: downgrade Java version for Spring Boot
The newer version of Spring Boot does not work with Java 21
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* chore: replace axios with fetch()
* Removed dependency on axios by using standard node fetch() function.
* Fixed getLatestPlatform(): using the 'tag_name' property instead of the 'name' property.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Revert "fix: downgrade Java version for Spring Boot"
This reverts commit fcfe65a0ad.
* empyt: just trigger CI
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* chore: update setup-java action
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* fix: add missing description property
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* fix: set distroless for setup-java action
Signed-off-by: Matej Vašek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vašek <mvasek@redhat.com>
The current binaries and allocation scrips are very CI-centric, this PR
takes a few steps to make them more friendly to running in a dev
environment; mainly centered around not polluting global scope (keeping
filesystem mutations in a relative local directory).
- binaries (and kind kubeconfig) are installed in ./hack/bin
- adds /hack/bin to .gitignore
- binary paths can be overridden via env vars FUNC_TEST_{name}
- binary fallback is system-installed (when binaries.sh not run)
- Cleanup of the UX, including colors and some shared helpers via
library.sh
- Removes `yq` as the hack that required it appears to no longer be necessary.
- Adds some notes for Nix users
- Better error messaging when !linux
- Refactors the installers to pipe directly to tar rather than touch
disk.
- begin to standardize on hyphens in filenames
The version 1.77.0 is not compatible with paketo buildpack.
* Updated version of Rust buildpack 0.35.0 => 0.45.0,
version 0.45.0 includes Rust 1.76.0.
* Disabling rustup buildpack so latest Rust (1.77.0) is not used,
instead Rust 1.76.0 from rust-dist buildpack is used.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* The socat/tar image is now build in GH Actions.
* We use new tiny deploy binary for deployment instead of whole func.
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* update go-http templates to match new idiomatic handler
* update embedded templates
* bump func-go dependency
* regenerate templates
* update template deps again
* run embed again
* update test fixtures
* use go1.22 in CI
* setup metallb right after creating k8s cluster
* func-go v1.21.2
* revert static http handler signature update
Since the Pack and S2I builders do not yet use the new func-go
middleware, we are not yet able update the static static handler template.
* func-go v0.21.3
* revert static handler template test
* update embedded template fs
* try go 1.21 throughout
---------
Co-authored-by: Luke Kingland <luke@lukekingland.com>
Newer version of pack does support adding custom labels to the builder
so the Dockerfile workaround is not needed anymore.
Also the Dockerfile workaround was failing recently due to high
number of layers in full builder.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* fix: GitLab test
Update to URL used in newer versions of GitLab.
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: increase resource limit
Signed-off-by: Matej Vasek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* refactor: rename func
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* chore: include Quarkus buildpack in our builder
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: add err check
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: close body after use
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: validate path in tar header
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: disable symlink support
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: sanitize tar file name
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: use correct image path
Signed-off-by: Matej Vasek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* test: optimise disk usage
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: change tag
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: use create to build testing buildah image
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: install crane
Signed-off-by: Matej Vasek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* test: use custom buildah image in tests
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* refactor: rename
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* test: use internal registry in on cluster tests
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* chore: more verbose output
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fix: use fake ctx until fixing termination properly
Signed-off-by: Matej Vasek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vasek <mvasek@redhat.com>
Use a different approach to pass current func image to the tests, this
approach does not require modification of task yaml nor access
to outer internet (ttl.sh).
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* chore: use custom jammy paketo builder
Use our own modified jammy builder with additional buildpacks for
GoFunc and Rust. This enables on cluster build for Go and Rust functions.
Where possible (Go, Java) we use "tiny" variant, other runtimes use "base"
variant.
The updated task is new file instead of modifying existing task
this is done for sake of keeping compatiblility.
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: remove unnecessary code per review request
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: podman test refers correct tkn task yamls
Signed-off-by: Matej Vasek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fix: spring boot dep update
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: update also spring-cloud version
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: install new deps
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: clean up
Signed-off-by: Matej Vasek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* test cluster versions update
Updates versions used for the test clutser, and includes a change
to use a specific kind node version rather than the kubernetes version per
Kind's docs.
- knative_serving v1.10.1
- knative_eventing v1.10.1
- contour v1.10.0
- kubectl v1.27.2
- dapr v1.10.0
- helm v3.12.0
- kind v0.19.0
- kind_node v1.27.1
* remove dapr dashboard patch
* dapr init flags resuscitation
* fixup: more verbose output
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: refactor extract version into variable
Signed-off-by: Matej Vasek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* test: integration tests for Tekton builds
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: disable s2i integration test for now
Signed-off-by: Matej Vasek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* chore: clean up PaC GitLab test
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: missing EOL
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: generate random password for GitLab
Signed-off-by: Matej Vasek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* feat: PaC for Gitlab
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: different approach to hostname resolution
Resolve '[*.]127.0.0.1.sslip.io' to cluster node IP.
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: error handling
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: added TODO
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: small refactor
Signed-off-by: Matej Vasek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* initial chg
* fix parent version selection
* change from `false` to false
* move platform checking as first task in main
* re-make generate/zz_filesystem_generated.go
* fixes of spaces in code at line 105, in following lint rules
* Use Contour Ingress instead of Kourier
Contour can be used to expose resources other that ksvc
(e.g. PaC controller).
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: use defined version of contour
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: shellcheck
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* Use LoadBalancer instead of NodePort in test
This makes services available on port 80 on both localhos and in docker
network, before these ports differed.
Signed-off-by: Matej Vasek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* doc: refer specific verision of Tekton not latest
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup
Signed-off-by: Matej Vasek <mvasek@redhat.com>
* fixup: shell-check
Signed-off-by: Matej Vasek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vasek <mvasek@redhat.com>