191 Commits

Author SHA1 Message Date
12bd7e927c Cirrus: Set EPOCH_TEST_COMMIT during gate task
For whatever reason, this required variable is not set when `make` is
doing validation within automation.  Fix this by establishing the
value based on data provided from the CI system.  Since this data
is specific to automation executing against a PR, limit this specific
job to not run during testing of branches (post-merge).  This is safe
since we can assume the PR would not have been merged, if the basics
checked during gating did not pass.

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-01-29 15:48:35 -05:00
d4c2aaf38a Add service endpoint
add service endpoint for the new API.  Also supports the varlink
implementation.

Signed-off-by: baude <bbaude@redhat.com>

Refactor to allow developer more control of API server

* Add api.NewServerWithSettings() to create an API server with custom
  settings
* Add api.ListenUnix() to create a UDS net.Listener and setup UDS

Signed-off-by: Jhon Honce <jhonce@redhat.com>
Signed-off-by: baude <bbaude@redhat.com>

More service completion

Add podman service command that allows users to run either a RESTful or
varlink protocol API service.

Addition of docs and RESTful listening.

Signed-off-by: baude <bbaude@redhat.com>
Signed-off-by: Brent Baude <bbaude@redhat.com>
2020-01-21 16:35:45 -06:00
ce16f264a2 Cirrus: Fix logic typo
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-01-21 16:31:05 -05:00
fb8209ad78 Cirrus: No upload snap for docs job
Previously, the upload-snap job was running during post-merge
testing when the magic ci-docs string was present in the PR
description.  This fixes that and makes all the `only_if`'s
more consistent.

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-01-21 15:00:58 -05:00
9be6f30a42 post-process swagger yaml for publish
Signed-off-by: baude <bbaude@redhat.com>
Signed-off-by: Chris Evich <cevich@redhat.com>
2020-01-17 15:41:33 -05:00
45a7e0146b Cirrus: remove workaround for cleaning /go/bin
Remove the temporary workaround for cleaning /go/bin in the gating task.
The workaround was added to make sure that we're always installing the
latest tools in `make install.tools`.  The gating image does not ship
with these pre-installed tools anymore which is now causing errors in
the gating task as the `rm` is missing the `--force` flag.

Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-01-16 12:08:58 +01:00
a6ea17455c [CI:DOCS]swagger cleanup and left-hand nav
add a static tags file so we can dictate the left-hand navigation. in
doing so we now override the tag in the swagger:operation. we now have
images and images (compat) as a way to differentiate.

Signed-off-by: baude <bbaude@redhat.com>
2020-01-15 14:22:25 -06:00
796ae87b1a Merge pull request #4850 from vrothberg/fix-linting
Fix linting
2020-01-13 21:03:21 +01:00
e83a1b87da Merge pull request #4817 from rhatdan/codespell
Add codespell to validate spelling mistakes in code.
2020-01-13 17:59:58 +01:00
768c476ae3 gating: clean /go/bin to install fresh tools
Once the gating image doesn't ship with pre-installed tools, we can
remove the workaround.

Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
2020-01-13 14:27:02 +01:00
4093b2c011 Add codespell to validate spelling mistakes in code.
Fix all errors found by codespell

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2020-01-11 06:32:19 -05:00
49be255fee Cirrus: Fix libpod base images going stale
VM Base images are used as a starting point for runtime VM images.
The in-use VM base images should never be pruned, which is an
operation that potentially occurs periodically from automation
running on the master branch of the libpod repo.

However the only place which updates timestamps (blocking pruning)
of base images, occurs during runtime VM image building.  Therefor,
if images are not regularly rebuilt, it's possible their base images
go stale and are pruned.

Changes:

* Add freshly-produced base images (old ones got pruned)
* Wrap the timestamp update script to include base image names
in the update list.

Notes:

* Regularly updating base image timestamps only needs to happen
on the libpod repo's meta task, since all base images live there.
* Using a wrapper is needed to maintain compatibility with multiple
versions of the imgts container image used by other repos / branchs.

Signed-off-by: Chris Evich <cevich@redhat.com>
2020-01-10 13:13:27 -05:00
e959abf2db Cirrus: Use branch-specific container tags
Automated building of container images is handled in quay.io based on
changes in the master branch of this repository.  However, as additional
branches are made, the "latest" image (from master) diverges from their
expectations.  Fix this by using the branch-tagged images built by quay.
For the near-term, this also implies quay.io will be configured to also
build different images for each branch, and tag them appropriately.
Long-term, image build automation should be combined with libpod
automation - to avoid needing to maintain automation in multiple
systems/locations.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-11-12 13:38:21 -05:00
5f3a61ed42 Add support for make vendor-in-container
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2019-11-08 06:27:17 -05:00
82381072e1 Merge pull request #4402 from baude/onlydocs
[CI:DOCS] make docsonly prs
2019-11-01 21:44:48 +01:00
f4e272b2fa [CI:DOCS] make docs only prs
skips certain aspects of prs for testing.

Signed-off-by: baude <bbaude@redhat.com>
2019-11-01 12:42:11 -05:00
0e74207fd6 Cirrus: Disable F29 testing
Signed-off-by: Chris Evich <cevich@redhat.com>
2019-10-30 15:47:38 -04:00
9ff66824f3 bump cirrus images
Signed-off-by: Peter Hunt <pehunt@redhat.com>
2019-10-28 16:13:58 -04:00
2bf184aa01 Merge pull request #4222 from cevich/collect_varlink_log
Cirrus: Produce and collect varlink output
2019-10-09 14:33:14 -07:00
ffe726ed64 Cirrus: Produce and collect varlink output
When executing 'make remotesystem' testing, a varlink process is started
up but it's stdio is dumped due to the production of excessive data.
However, this also means if the process has a problem, any errors will
not be accessible.

Instead, grab only the last 100 lines and direct them into a file.  Also
update automation's log collection to retrieve this file when the
`$REMOTE_CLIENT` env. var. is `true`.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-10-08 16:47:37 -04:00
e18dfe69f5 Cirrus: Remove broken/failing testing_crun task
This task was to enable cross-environment testing of crun.  However it
was decided to only run testing w/ crun on F31.  Since F31 release is
imminent, remove this task.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-10-07 13:43:00 -04:00
0f69032a4b Cirrus: Use new VM cache images
Signed-off-by: Chris Evich <cevich@redhat.com>
2019-10-07 13:12:02 -04:00
0b5100ff79 Cirrus: Show names/versions of critical packages
Adds an output to all testing tasks which lists the names/versions of
critical/essential packages present on the VM.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-10-01 08:54:50 -04:00
c3b9e21c41 Merge pull request #4087 from cevich/intended_env_var
Cirrus: Minor, fix env. var. intention
2019-09-30 13:43:46 -07:00
742a8b0c6e Merge pull request #4028 from cevich/add_bash_completion_support
cirrus: Add bash-completion support
2019-09-29 07:01:46 -07:00
ce5d506cc0 Cirrus: Minor, fix env. var. intention
Signed-off-by: Chris Evich <cevich@redhat.com>
2019-09-27 13:23:21 -04:00
85fef6a0ba Merge pull request #3879 from cevich/zip_to_msi
Automate production of MSI release files
2019-09-27 17:10:10 +02:00
e122c24c36 Cirrus: Implement newly built VM images
Signed-off-by: Chris Evich <cevich@redhat.com>
2019-09-26 14:54:27 -04:00
b9e21af44f cirrus: Add bash-completion support
This is fairly standard thing to have on a user's workstation, supported
by podman.  When installed in a VM image, then it's useful for debugging
with `hack/get_ci_vm.sh` at the cost of a minor increase in disk-space.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-09-26 09:58:16 -04:00
a5b24816c7 Merge pull request #4073 from cevich/move_ci_unit_test
Cirrus: Fail early on CI script unit test
2019-09-25 09:45:47 +02:00
601052b386 Cirrus: Upload windows MSI release file
Signed-off-by: Chris Evich <cevich@redhat.com>
2019-09-24 15:13:40 -04:00
90f82335d9 Cirrus: Fail early on CI script unit test
Instead of running this basic checks for almost all tasks, just do them
once at the beginning.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-09-23 13:41:28 -04:00
387ffe7dd2 Cirrus: Add upload_snap to success dependencies
Signed-off-by: Anatoli Babenia <anatoli@rainforce.org>
2019-09-23 03:29:27 +03:00
6978f19779 Cirrus: Add snapcraft credentials
Signed-off-by: Anatoli Babenia <anatoli@rainforce.org>
2019-09-23 03:29:27 +03:00
0bae5bad1b Cirrus: Upload snap only on merges to master
Signed-off-by: Anatoli Babenia <anatoli@rainforce.org>
2019-09-23 03:29:27 +03:00
9fc6abf2a8 Cirrus: Push snap continuously
Signed-off-by: Anatoli Babenia <anatoli@rainforce.org>
2019-09-23 03:29:27 +03:00
a6534a7c96 Cirrus: Temporarily disable testing on Ubuntu 19
The images build correctly but neither integration or remote client
tests pass.  Temporarily disable Ubuntu 19 testing until both are
ready to be supported.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-09-20 14:34:13 -04:00
9a2ae2442d Cirrus: Add latest ubuntu
Add the latest Ubuntu version into the testing matrix
and image-build workflow. This is also needed to support
other containers projects which share use of VM images
from this one.

Update package lists to include needs for contianers/storage
use of images.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-09-20 14:34:13 -04:00
93869eb500 Cirrus: Update podbot credentials
Signed-off-by: Chris Evich <cevich@redhat.com>
2019-09-20 11:38:46 -04:00
7ed1816900 Merge pull request #4051 from giuseppe/use-crun-pkg
tests: use crun package
2019-09-20 09:00:22 +02:00
96bcf8cecc Support podman-remote help on windows
* Update scipts to produce darwin and windows output
* Update batch file to re-direct help requests to browser
* Add pandoc filter for markdown to html links

Signed-off-by: Jhon Honce <jhonce@redhat.com>
2019-09-19 14:14:38 -07:00
6e35886dc2 tests: use crun package
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2019-09-19 13:58:56 +02:00
ba7e863ac3 add lint and manpage check to make validate
make validate now runs golangci-lint and the man-page-checker to ensure
a PR is ready for our CI system.

Signed-off-by: baude <bbaude@redhat.com>
2019-09-10 05:45:59 -05:00
f1a3e02aea Merge pull request #3928 from edsantiago/enable_man_page_checker_in_ci
Enable hack/man-page-checker in CI
2019-09-04 14:30:51 +02:00
e367fc04d8 Enable hack/man-page-checker in CI
With huge thanks to @rwha for #3915. All man pages are clean
and consistent now - let's keep them that way.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2019-09-03 06:37:29 -06:00
704c4c171f Cirrus: Remove image_prune YAML-alias workaround
Originally when written, the image_prune_task was passing incorrect
credentials into it's container.  This was traced back to mishandling of
a YAML-alias, and worked-around (including a comment).  However,
as of this commit, it appear YAML-alias substitution problem has
been addressed.  Restore the (correct) use of a YAML-alias so
the correct credentials are passed into the prune container.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-08-30 09:46:43 -04:00
ab5f52c0d2 Merge pull request #3710 from cevich/release_redo
Release redo
2019-08-29 06:56:43 -07:00
4e209fc10a Merge pull request #3823 from cevich/prune_old_images
Cirrus: Enable VM image housekeeping
2019-08-28 18:51:53 +02:00
370b1a887c Cirrus: Reimplement release archive + upload
The initial implementation was far more complicated than necessary.
Strip out the complexities in favor of a simpler and more direct
approach.

Signed-off-by: Chris Evich <cevich@redhat.com>
2019-08-28 11:54:06 -04:00
6e3ee63091 Add snap build test to success and release check
Signed-off-by: Anatoli Babenia <anatoli@rainforce.org>
2019-08-28 12:13:37 +03:00