* ci: increase dns update max retries
* src: Makefile accessibility
Restructures the Makefile for better readibility
Separates core unit tests from template unit tests
Adds a `help` target highlighting core targets
Removes unused 'cluser' and 'release' targets
Removes unused targets
Restructures repository cluster setup and configuration scripts
to be used both for local testing as well as in CI. Adds a
CI-specific ci.sh script for the differences. Additionally:
- Upgrades to knative v0.23.0
- Upgrades eventing from v1beta1 API to v1
- Adds binary installation script (linux)
- Serializes Build, Int Test, e2e test steps
- Installs Broker and Channel to support Knative Quickstart tutorial.
- Runs a test echo server during installation
- Adds event-based waits in place of most blind time-based waits
- Adds explicit Kubernetes version for KinD
- Replaces a NodePort patched Koourier with an explicit ingress
- Adds retries while activator webhook becomes available
- Merges allocate and configure
* feat: client progress listener 'stopping' state
* src: testable commands
Restructures commands to accept a fn.Client constructor on command
instantiation. This allows the concrete implementations, or entire
client to be mocked for testing.
Also some minor refacotring as necessary to shoehorn into the pattern.
* fix: increase default timeout to 120s for service creation
* chore: bump kind, knative and kubectl versions
* chore: fix versioning in CI builds
For unknown reasons, the git tag for a release CI build via release-please
seems to happen after the build completes. It's a bit uncleear, but the
result is that we get v0.0.0 versions for released builds.
This commit modifies the Makefile to allow for an environment override of
the $VERS variable. Since the release-please-action documents `tag_name`
as output from the action, we can use this in CI to set the environment
variable.
Signed-off-by: Lance Ball <lball@redhat.com>
* chore: pull and run pkger on main branch CI
I started this by trying to run a build matrix, but it got complicated pretty
quickly, since this build actually does `make cross-platform`. If we want to
also run a platform matrix when things land on `main`, I think it would be best
if we modified `pull_requests.yaml` to also run on `main` as well as on pull
requests (and be renamed).
Signed-off-by: Lance Ball <lball@redhat.com>
* fixup: remove personal branch from build trigger
This commit adds `pkger` to the Makefile, ensuring that when any changes are
made in the `templates` directory it runs. For CI, I've added a download of the
`pkger` binary.
Fixes: https://github.com/boson-project/faas/issues/230
Signed-off-by: Lance Ball <lball@redhat.com>
This commit modifies the CI action so that it should bump minor versions
until we explicitly have a 1.0.0 release. I've also bumped the version
of release-please-action to the latest 2.5.5.
Signed-off-by: Lance Ball <lball@redhat.com>
There was a typo in the upload part of the CI. Also, there was a section
that (thankfully) did not run, which would have created a second release.
Moved the release-please action later in CI so less time elapses between
the creation of the release, and the upload of the binaries.
Signed-off-by: Lance Ball <lball@redhat.com>
This commit adds release-please as a github action, replacing the
develop, main and releases actions. Now, with each commit to main, a PR
is either created or updated with the contents of all changes since the
last release. When this PR is landed, a tag and branch are created, and
the build artifacts (binaries) are uploaded as part of a regular github
release.
A practical result of this landing will be that all work will subsequently
happen on the `main` branch (aside from backport releases) and the `develop`
branch will no longer be used.
When this is landed on `main`, a release will not be created as per usual.
Instead, a PR will be created with the contents of the changes since the
last release.