Commit Graph

91 Commits

Author SHA1 Message Date
Zbynek Roubalik 8939f89bea
feat: generate json schema for func.yaml (#460)
Signed-off-by: Zbynek Roubalik <zroubali@redhat.com>
2021-08-09 03:28:11 -07:00
Lance Ball be1ae69b43
chore(ci): fix main CI reference to downloaded pkger (#439)
Signed-off-by: Lance Ball <lball@redhat.com>
2021-07-26 17:06:50 -07:00
Luke Kingland c257de807d
src: Makefile developer accessibility (#428)
* 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
2021-07-21 00:45:38 -07:00
Matej Vasek ed0c246ada
CI integration test with podman (#422)
Signed-off-by: Matej Vasek <mvasek@redhat.com>
2021-07-16 06:47:09 -07:00
Luke Kingland b1d840ad60
ci: move to inbuilt cluster config (#419)
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
2021-07-15 07:45:32 -07:00
Luke Kingland afcde2d551
src: testable commands (#415)
* 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
2021-07-09 11:15:23 -04:00
Lance Ball 08df25b9bf
chore(CI): use container-tools/kind for integration tests (#407)
Signed-off-by: Lance Ball <lball@redhat.com>
2021-06-24 14:08:23 -04:00
Zbynek Roubalik 553dfa83f6
chore: e2e tests should run against Knative 0.22.0 (#372)
Signed-off-by: Zbynek Roubalik <zroubali@redhat.com>
2021-06-02 13:51:12 -04:00
jrangelramos ae8ee9a02c
ci: implementation proposal for func e2e test (#363)
Signed-off-by: Jefferson Ramos <jrangeramos@gmail.com>
2021-06-02 09:43:04 +02:00
Zbynek Roubalik 4f0641f586
chore: bump Knative deps to 0.22.0 (#368)
* chore: bump Knative deps to 0.22.0

Signed-off-by: Zbynek Roubalik <zroubali@redhat.com>
2021-06-01 16:29:41 +02:00
Lance Ball 72584ced0d
fix: Revert "chore: bump Knative deps to 0.22.0 (#358)" (#366)
This reverts commit 27f62066ee.
2021-05-27 16:18:33 -04:00
Zbynek Roubalik 27f62066ee
chore: bump Knative deps to 0.22.0 (#358)
* chore: bump Knative deps to 0.22.0

Signed-off-by: Zbynek Roubalik <zroubali@redhat.com>

* update to Knative 0.22.0

Signed-off-by: Zbynek Roubalik <zroubali@redhat.com>
2021-05-25 15:05:05 +02:00
Lance Ball 2b025df199
src!: revert bump to go 1.16 and template changes (#340)
* Revert "src: rename boson import 'fn'"

This reverts commit c0a6f561c0.

* Revert "src: all test dirs set to 0700"

This reverts commit 99f01220c2.

* Revert "src: better error when custom template not found"

This reverts commit 6673395834.

* Revert "src: better errors when custom runtime not found"

This reverts commit a31a6f67a1.

* Revert "build: create separate target for templates.tgz"

This reverts commit 11164bf8d9.

* Revert "src: use consistent separators for fs.FS instances"

This reverts commit 4db07b412f.

* Revert "src: update go event template dependencies"

This reverts commit 3bfc13380f.

* Revert "src: tarfs assumes forward slashes internally"

This reverts commit 6cc0e67b1c.

* Revert "feat: support windows paths in embedded templates FS"

This reverts commit c2b216857b.

* Revert "feat: positive error when runtimme or template unrecognized"

This reverts commit acc56b0900.

* Revert "fix: lint issues"

This reverts commit 895872aee7.

* Revert "ci: go 1.16 compatiblity updates"

This reverts commit 1e3959c045.

* Revert "feat: preserve file modes using in-memory tar FS"

This reverts commit 7dc772ec62.

* Revert "feat: create templates archive on go generate"

This reverts commit 63b7f11471.

* Revert "ci: remove pkger from ci"

This reverts commit 876b0dd0f7.

* Revert "src: remove pkger dependency and tidy"

This reverts commit f006ab1e32.

* Revert "src: remove packaging artifact"

This reverts commit 4d9d0a7b4e.

* Revert "src: remove pkger from make targets"

This reverts commit e44c1ad74c.

* Revert "src: replace pkger with embed.FS"

This reverts commit 38874a4afd.

* Revert "src: update references to deprecated ioutil"

This reverts commit 4025460f73.

* Revert "src: require go 1.16"

This reverts commit 512d4c2580.

* chore: update pkged.go

Signed-off-by: Lance Ball <lball@redhat.com>
2021-05-12 14:37:21 -04:00
Luke Kingland 87fd7babf1
chore: remove deprecated func image 2021-05-10 21:00:23 +09:00
Luke Kingland 1e3959c045
ci: go 1.16 compatiblity updates 2021-05-07 14:05:16 +09:00
Luke Kingland 876b0dd0f7
ci: remove pkger from ci 2021-05-07 14:04:41 +09:00
lkingland 255b4fb33c
Draft releases through synchronous tagging (#320)
* feat: synchronously tag releases

* fix: missing verbose version info in inter-release binaries
2021-04-27 17:06:39 -04:00
Lance Ball ce47370654
chore: fix versioning in CI builds (#290)
* 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>
2021-04-01 09:28:08 -04:00
lkingland 62a71c3b82
ci: run release action prior to checkout (#289) 2021-03-30 09:38:14 -04:00
Luke Kingland 4f2f577a82
ci: run integration tests with on-demand cluster 2021-03-10 19:35:27 +09:00
Lance Ball 54306375e1
chore: pull and run pkger on main branch CI (#247)
* 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
2020-12-11 08:46:34 -05:00
Lance Ball 99bee20639
chore: ensure that pkger is run when templates change (#239)
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>
2020-12-10 10:27:59 -05:00
Zbynek Roubalik 470ebb9da4
rename function -> func (#217)
Signed-off-by: Zbynek Roubalik <zroubali@redhat.com>
2020-11-06 12:47:30 +01:00
Zbynek Roubalik cd57692c9d
feat!: rename faas to function (#210)
* rename faas to function

Signed-off-by: Zbynek Roubalik <zroubali@redhat.com>

* function.yaml -> func.yaml

Signed-off-by: Zbynek Roubalik <zroubali@redhat.com>
2020-11-06 10:41:42 +01:00
Zbynek Roubalik c036a77d37
fix version for release builds (#208)
Signed-off-by: Zbynek Roubalik <zroubali@redhat.com>
2020-11-05 15:59:47 +01:00
Lance Ball 12c1dc0a94
chore(ci): tweak release-please-action to bump minor pre major. (#170)
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>
2020-10-13 10:44:49 -04:00
Lance Ball 54e9b2703e
chore(actions): update release-please-action to latest 2.4.1 (#146)
Signed-off-by: Lance Ball <lball@redhat.com>
2020-10-02 11:46:55 -04:00
Lance Ball 05196a66b7
chore(ci): fix release binary uploads (#139)
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>
2020-09-29 09:22:00 -04:00
Matej Vasek b7670a3f7b
chore: run GH actions on Windows and macOS 2020-09-16 17:29:13 +02:00
Lance Ball 8a60c5e0c4 feat(ci/cd): add release-please for automated release management
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.
2020-09-10 09:49:54 -04:00
Luke K fffb1f28bc
build: remove main branch from release 2020-09-09 23:09:03 +09:00
Lance Ball 9826487044
chore(actions): add binary uploads to develop branch CI (#104)
This will enable non-developers who are interested in trying out the
latest builds to easily get a copy pre-release.
2020-09-04 12:11:54 -04:00
Luke K be8c9eb52a
fix: build releases from main branch only 2020-09-04 23:21:38 +09:00
Luke K cda3a98e9a
chore: use organization-level secrets for image deployment 2020-09-04 23:17:04 +09:00
Luke K 15f1e8be1e
feat: build and release cross-platform binaries 2020-07-29 16:04:12 +00:00
Matej Vasek 4677b3452f
chore: add lint to GH actions CI 2020-07-29 17:47:08 +02:00
Luke K cc016db990
build: update container latest tag when releasing 2020-07-28 14:52:49 +00:00
Lance Ball 0f39bac4b1
actions: add automated releases of faas binary 2020-07-17 14:21:31 -04:00
Luke K f877116286
separate branch builds for status badges 2020-07-09 12:41:49 +00:00
Luke K cb0a74714c
enable build from tag 2020-07-08 12:22:27 +00:00
Luke K 287df42499
workflows 2020-07-08 09:41:46 +00:00