* Use command instad of script in some tkn tasks
The "script" requires /bin/sh present in the image.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Add s2i-generate command to func-util image
The command encompasses some logic previously implemented as shell
script defined in tekton task. This allows us to remove sh/shell from
the func-util image.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Make func-util image "FROM scratch"
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Change func-utils image tag latest->v2
Since there are backward incompatible changes we must not change how
'latest' tag work (at least for some time).
For this reason we change tag to v2, so newer versions of func use that
and older use 'latest' that is compatible with them.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vašek <mvasek@redhat.com>
Some tools dislike having questionable symlinks in git repository so we
must create this symlinks dynamically in the test instead of having it
committed into the repository.
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* Fixed pod readiness check
Detect also if pod did not exited prematurely.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Removed dependency on sh/tar from alpine image
This commit removes depencency on sh and tar binaries by implementing
the logic in our func-util binary.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Remove usage of ttl.sh
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Fix detection of host resolution failure
Signed-off-by: Matej Vašek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Fix some linter errors
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* fixup: set func registry
Signed-off-by: Matej Vašek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* simplify more
Signed-off-by: David Fridrich <fridrich.david19@gmail.com>
* fix
Signed-off-by: David Fridrich <fridrich.david19@gmail.com>
* fix creds test
Signed-off-by: David Fridrich <fridrich.david19@gmail.com>
* name fix
Signed-off-by: David Fridrich <fridrich.david19@gmail.com>
* naming
Signed-off-by: David Fridrich <fridrich.david19@gmail.com>
---------
Signed-off-by: David Fridrich <fridrich.david19@gmail.com>
* Improve build caching for s2i local build
Use 'RUN --mount=type=cache...' to cache build artifacts,
e.g. the local maven repostory.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Update podman version in tests
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* fixup: set buildopt version to buildkit
Signed-off-by: Matej Vašek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vašek <mvasek@redhat.com>
When running on Windows the path separators in symlink target is
backslash. This must be fixed up when uploading source code into docker
daemon or into cluster volume.
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* fix: allow sub-pkgs in Go functions
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* fixup
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* fixup
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* fixup
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
---------
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
It appears that Go's MatchReader() returns true only if some new lines
are written to the writer after the searched word. It mostly all right
because socat actually writes several more lines to stderr. However this
new implementation is better it should signal immediately when searched
patter is written to the writer.
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* Fix test failures in OCP prow CI
Ensure that ServeRepo() make copy of repo from ./testdata and serves the
repo from that copy.
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* fixup: typo
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
---------
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* migrate
Signed-off-by: David Fridrich <fridrich.david19@gmail.com>
* migrate more
Signed-off-by: David Fridrich <fridrich.david19@gmail.com>
* sort imports
Signed-off-by: David Fridrich <fridrich.david19@gmail.com>
---------
Signed-off-by: David Fridrich <fridrich.david19@gmail.com>
* Prepare util image to accomodate multiple cmds
As of now func-util image has only one command of our own -- "deploy".
This commits prepares grounds for one additional command named "scaffolding".
The commands will be implemented in one binary and dispatched over
argv[0] using symlinks. Kinda like busybox does.
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* Add scaffolding for on-cluster build
Added new build step in tekton pipeline that scaffolds main() for Go
porject when using s2i builder.
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* Better docker build caching
This will cache dependencies between docker builds.
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* fixup: perms
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* fixup: remove broken check
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* fixup: remove test because of 'no space left on device'
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* Make func-util rootfull
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
---------
Signed-off-by: Matej Vašek <matejvasek@gmail.com>
* feat: embed tkn tasks in func binary
Embed Tekton tasks for direct on cluster build.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* feat: embed tkn tasks in func binary
Embed Tekton tasks for PaC build.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* feat: added tkn-tasks sub-command
This new command prints tektons tasks in form of multi-document yaml,
these tekton tasks may requird to be installed for some advanced
functionality.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* chore: remove unused files
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* feat: make deployer image settable via linker
Signed-off-by: Matej Vašek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* tests: remote unncessary software from GH VM
Previously tests were failing with no space left on device.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* fixup: updated generated code
The codegen should have been updated in prior PR but we forget do do it
there.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* test: wait for gitlab setting effect
Signed-off-by: Matej Vašek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Fixed detection of PaC controller URL for unprivileged users.
* Use fn.Deploy.Image before fn.Image since the fn.Image may not be
populated.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* test: fix error when setting gitlab settings
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* test: replace sleep with active condition check
Signed-off-by: Matej Vašek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* chore: update tekton
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* fixup: param introduced in new version of gitlab lib
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* chore: update tekton,PaC used in test env
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* fixup: disable affinity assistant for tekton
The affinity assistant is causing troubles in testing KinD cluster.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Always try daemon push first
Daemon push is now tried always first withouth using
net.DefaultResolver.LookupHost() to guess if the registry is reachable
from the daemon. If the daemon returns error contaning "no such host"
then use manual push with custom transport.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Rework image pusher tests
Merged daemon push and non-daemon tests to one table driven test.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* Use image index not just image
This results in "multi-arch" image with single architecture this may
seems weird but it helps multi-arch clusters to run pods on approprieate
nodes.
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* fixup: style
Signed-off-by: Matej Vašek <mvasek@redhat.com>
---------
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* fix: default NS for PaC
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* fix: make error non-fatal
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* fix: pass correct image to PaC
Signed-off-by: Matej Vašek <mvasek@redhat.com>
* chore: enable gitlab test
---------
Signed-off-by: Matej Vašek <mvasek@redhat.com>