Commit Graph

213 Commits

Author SHA1 Message Date
Phil Estes
1b8af3752d
Merge pull request #6292 from aznashwan/windows-integration-conditional-artefact-upload
Integration: Check GCP secrets on Windows CI artifact upload.
2022-01-05 12:37:40 -05:00
Nashwan Azhari
90426378e3 Integration: Check GCP secrets on Windows CI artifact upload.
This patch makes the Windows Integration GitHub workflow conditionally
execute the CI artifact upload to GCP on successful runs iff the GitHub
secrets containing the GCP access info are defined.

Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
2021-12-27 19:15:46 +02:00
Kevin Parsons
e0a433abfb
Merge pull request #6347 from gabriel-samfira/fix-windows-test-setup
cri-integration: Add Windows defaults and fix spaces issue
2021-12-17 11:49:03 -08:00
Gabriel Adrian Samfira
78ad7a2d3a
cri-integration: Add Windows default paths
This change adds the following:

  * Default paths to REPORT_DIR, CONTAINERD_STATE and
CONTAINERD_ROOT for Windows
  * Removes the need for nssm on Windows. The nssm service
has issues dealing with paths that contain spaces. Also, the
containerd binary is perfectly capable of registering itself
as a service in Windows, and Windows itself can take care of
any failure handling of the service. NSSM is useful for binaries
that do not have any kind of Windows service logic built into
them. That is not the case of containerd.
  * Use wrapper functions that run containerd, ctr and criclt
with properly quoted paths to pipes, sockets, state and root dirs.
Currently, if the state and root dirs contain spaces in them, the
command line flags on both Windows and Linux are not properly set.
The wrapper functions will allow us to use the readiness_check
and keepalive functions to retry the commands, while properly
quoting the paths and avoiding eval.

Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2021-12-15 14:11:58 +02:00
Kevin Parsons
3c3486f91b
Merge pull request #6350 from aznashwan/windows-integration-disable-2004
Remove Windows integration testing for 2004.
2021-12-14 13:17:35 -08:00
Sebastiaan van Stijn
0e472420bf
Update Go to 1.17.5
go1.17.5 (released 2021-12-09) includes security fixes to the syscall and net/http
packages. See the Go 1.17.5 milestone on the issue tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.17.5+label%3ACherryPickApproved

Update Go to 1.17.4
--------------------

go1.17.4 (released 2021-12-02) includes fixes to the compiler, linker, runtime,
and the go/types, net/http, and time packages. See the Go 1.17.4 milestone on
the issue tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.17.4+label%3ACherryPickApproved

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-12-12 01:25:02 +01:00
Maksym Pavlenko
a95a8b8fff
Merge pull request #6338 from kzys/windows-fail-fast
Don't fail-fast on Windows integration tests
2021-12-10 09:52:03 -08:00
Maksym Pavlenko
95b83fa54f
Merge pull request #6355 from dmcgowan/integration-client-restart-daemon-output
Update restart monitor test to output daemon logs on failure
2021-12-09 13:51:01 -08:00
Derek McGowan
2c96d5b067
Run windows parallel integration test as short
This prevents tests which spawn daemons from running at
the same time as the first integration test.

Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-12-09 11:45:38 -08:00
James Sturtevant
68dabdcc69 Use RFC3339 format so rg cleanup works
Signed-off-by: James Sturtevant <jstur@microsoft.com>
2021-12-07 11:04:36 -08:00
Nashwan Azhari
6f9d80907e Remove Windows integration testing for 2004.
Considering Windows 2004's EoL on the 14th of December, 2021,
this PR removes all periodic integration testing for 2004.

Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
2021-12-07 19:49:33 +02:00
Kazuyoshi Kato
4c1e26cd5b Don't fail-fast on Windows integration tests
As like other integration tests, Windows integration tests should not
fail-fast. So developers can see whether an issue is platform-specific
or not.

Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2021-12-06 10:56:33 -08:00
Kazuyoshi Kato
6b0e2414c8 Do not use go get to install executables
https://go.dev/doc/go-get-install-deprecation

Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2021-12-03 14:56:33 -08:00
Maksym Pavlenko
d06bce4d3d
Merge pull request #6314 from dcantah/ws2022-ci
Add Windows Server 2022 CI runs
2021-12-03 10:51:00 -08:00
Gabriel Adrian Samfira
4ccf287da7
Set CONTAINERD_ROOT in Windows cri-integration
Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2021-12-03 07:44:44 +02:00
Daniel Canter
ff77dd1121 Add Windows Server 2022 CI runs
GA for ws2022 github actions VMs launched a couple weeks ago so seems like
it's time to try out the CI on this new SKU.

This involved adding new ws2022 runs for the OS matrices in the CI, fixing up
a test in the platforms package and adding a mapping for the ws2022 container image in
integration/client.

Signed-off-by: Daniel Canter <dcanter@microsoft.com>
2021-12-02 16:18:25 -08:00
Derek McGowan
665877a5bf
Move volume images from gcr to ghcr
With the ghcr images now built and working, switch over to
use these new images and update the default name.

Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-12-02 10:29:44 -08:00
Gabriel Adrian Samfira
323a62d7b9
Add permissions
Limit the scope of GITHUB_TOKEN to only have write access to packages
and read access to metadata. By default it seems to be granted access
equal to that of the github.actor that triggered the workflow, which
may include access to more than the workflow needs.

Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2021-12-02 18:28:51 +02:00
Gabriel Adrian Samfira
c6d26f0d37
Authenticate against ghcr.io
This change adds a login step that authenticates the runner to
ghcr.io. This allows whomever triggers the action to use github
packages as a destination for the container images.

Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2021-12-02 17:41:54 +02:00
Derek McGowan
591d7097e7
Merge pull request #6290 from gabriel-samfira/add-test-image-build-action
Integration: Add image build workflow
2021-11-30 13:51:24 -08:00
Gabriel Adrian Samfira
7ccd733d25 Add image build workflow
This change adds a new workflow that builds the volume test images
and pushes them to a remote registry.

Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2021-11-25 09:26:17 +00:00
Nashwan Azhari
0a25bc1aac Integration: Separate Windows Periodic Tests workflow trigger.
Following PR #6284, the Windows Periodic Workflow is prevented from
running on any repository outside of the original.

While this achieves the goal of preventing senseless Windows workflow
failures in contributors' forks, it makes running the workflow for
contributors (even manually) impossible.

This PR adds a separate workflow file which triggers the Windows
Integration workflow iff it is being run off of the original repository,
thus maintaining the upstream scheduling, while allowing contributors to
manually trigger the workflow on their forks if they so desire.

Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
2021-11-24 18:18:14 +02:00
Phil Estes
0a284fcdbc
Merge pull request #6284 from jonyhy96/feat-ci-skip-fork
feat: skip ci for fork
2021-11-23 23:20:37 -05:00
haoyun
507bfc91ba feat: skip ci for fork
Signed-off-by: haoyun <yun.hao@daocloud.io>
2021-11-24 10:24:13 +08:00
Phil Estes
72384a6531
Merge pull request #6268 from aznashwan/windows-ci-autodetect-az-cli
Integration: Remove explicit version passing to `azure/CLI`.
2021-11-23 12:44:35 -05:00
Nashwan Azhari
cb1359fa8b Integration: Remove explicit version passing to azure/CLI.
In the Windows CI's periodic runs the `azure/CLI` GitHub action library
is leveraged to run various Azure-related commands.

To avoid possible desyncing between the auth libraries of `azure/Login`
and `azure/CLI` as described
[here](https://github.com/Azure/cli/issues/56#issuecomment-958705517),
this patch neglects to pass an explicit `azcliversion` to `azure/CLI` in
order to have it default to the Azure CLI version set up by `azure/Login`.

Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
2021-11-22 20:15:36 +02:00
Derek McGowan
5df9ec3665
Update release name to use consistent format
Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-11-18 13:48:47 -08:00
Brian Goff
be84932e11 Rename release dockerfile to omit distro name
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2021-11-11 20:06:49 +00:00
Tonis Tiigi
28126fd605 release: improve dockerfile
Removes amd64 specifics and hardcoded arm64 package pulls.

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2021-11-11 20:06:47 +00:00
Brian Goff
27d7c50384 Add arm64 to releases
This moves all the release builds into a Dockerfile which is a bit
cleaner for setting up our build environment.

Non-linux/amd64 builds are cross-compiled.
Currently onlinux linux/amd64, linux/arm64, and windows/amd64 are
supported, but is easy to add more, provided their is a cross-compile
toolchain available for it.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2021-11-11 20:00:34 +00:00
Sebastiaan van Stijn
869ccc01c1
Update Go to 1.17.3
go1.17.3 (released 2021-11-04) includes security fixes to the archive/zip and
debug/macho packages, as well as bug fixes to the compiler, linker, runtime, the
go command, the misc/wasm directory, and to the net/http and syscall packages.
See the Go 1.17.3 milestone on our issue tracker for details.

From the announcement e-mail:

[security] Go 1.17.3 and Go 1.16.10 are released

We have just released Go versions 1.17.3 and 1.16.10, minor point releases.
These minor releases include two security fixes following the security policy:

- archive/zip: don't panic on (*Reader).Open
  Reader.Open (the API implementing io/fs.FS introduced in Go 1.16) can be made
  to panic by an attacker providing either a crafted ZIP archive containing
  completely invalid names or an empty filename argument.
  Thank you to Colin Arnott, SiteHost and Noah Santschi-Cooney, Sourcegraph Code
  Intelligence Team for reporting this issue. This is CVE-2021-41772 and Go issue
  golang.org/issue/48085.
- debug/macho: invalid dynamic symbol table command can cause panic
  Malformed binaries parsed using Open or OpenFat can cause a panic when calling
  ImportedSymbols, due to an out-of-bounds slice operation.
  Thanks to Burak Çarıkçı - Yunus Yıldırım (CT-Zer0 Crypttech) for reporting this
  issue. This is CVE-2021-41771 and Go issue golang.org/issue/48990.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-11-05 12:46:33 +01:00
Gabriel Adrian Samfira
548579d0e2
Pin az CLI version
The latest version of AZ CLI breaks the windows-periodic workflow.
See:

https://github.com/Azure/cli/issues/56

Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2021-11-04 15:56:27 +02:00
Phil Estes
4ed3c524cf
Update test timeout based on recent cancellations
Signed-off-by: Phil Estes <estesp@amazon.com>
2021-10-08 16:10:55 -07:00
Sebastiaan van Stijn
de1a39bf32
Update Go to 1.17.2
go1.17.2 (released 2021-10-07) includes a security fix to the linker and misc/wasm
directory, as well as bug fixes to the compiler, the runtime, the go command, and
to the time and text/template packages. See the Go 1.17.2 milestone on our issue
tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.17.2+label%3ACherryPickApproved

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-10-08 15:26:34 +02:00
Derek McGowan
67b8831461
Update mirror images to take target image name
Allow overwriting the target tag to support mirror images from multiple
sources under our single namespace.

Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-09-28 14:08:46 -07:00
Maksym Pavlenko
483e23bdcd
Merge pull request #6036 from dmcgowan/add-mirror-action
Add github action to mirror image
2021-09-21 16:06:33 -07:00
Derek McGowan
407d606941
Add github action to mirror image
Signed-off-by: Derek McGowan <derek@mcg.dev>
2021-09-21 13:23:51 -07:00
Kazuyoshi Kato
97df73004e gha: collect Vagrant VMs' IP addresses
To investigate #5748, this change collects Vagrant VMs' IP addresses.

Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2021-09-21 11:40:24 -07:00
Phil Estes
73dbbf5bfa
Update to Go 1.17.1
Signed-off-by: Phil Estes <estesp@amazon.com>
2021-09-14 09:12:00 -04:00
Michael Crosby
5e32e9d855
Merge pull request #5917 from mxpv/issue_forms
Use issue forms for bug reporting
2021-09-09 10:53:52 -04:00
Adelina Tuvenie
aeea697d84 Add WS2022 support in Windows Periodic tests
Some extra steps were added for WS2022 in accordance with
the published image on Azure:
- Install Container Feature & reboot VM
- Create NAT network

Temporarily we skip critest steps for WS2022 until all test images
are updated in that project.

Signed-off-by: Adelina Tuvenie <atuvenie@cloudbasesolutions.com>
2021-09-07 15:42:58 +03:00
Maksym Pavlenko
278176db15 Address issue forms feedback
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2021-08-30 11:46:27 -07:00
Maksym Pavlenko
11ab3cba0e Use issue forms for bug reporting
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2021-08-26 15:16:22 -07:00
Phil Estes
736222dd87
Merge pull request #5897 from kzys/upgrade-golangci-lint
script: update golangci-lint from v1.38.0 and v1.36.0 to v1.42.0
2021-08-20 11:59:28 -04:00
Kazuyoshi Kato
4dd5ca70fb script: update golangci-lint from v1.38.0 and v1.36.0 to v1.42.0
golint has been deprecated and replaced by revive since v1.41.0.

Signed-off-by: Kazuyoshi Kato <katokazu@amazon.com>
2021-08-19 16:27:16 -07:00
Phil Estes
9fe7bc938b
Bump integration timeout to 35 min
Go 1.17 go mod download step (used to handle the separate integration
go.mod) seems to do a lot more work/validation than prior Go releases,
requiring more time for integration runs.

Signed-off-by: Phil Estes <estesp@amazon.com>
2021-08-19 10:18:17 -04:00
Phil Estes
f8602c3725
Update to Go 1.17
Signed-off-by: Phil Estes <estesp@amazon.com>
2021-08-17 12:27:39 -04:00
Michael Crosby
7f0be5edd8
Merge pull request #5839 from dcantah/ci-weirdness
Fix Linux CI Linter using Go 1.15.14
2021-08-07 21:43:56 -04:00
Sebastiaan van Stijn
42a28ad2ca
Update Go to 1.16.7
go1.16.7 (released 2021-08-05) includes a security fix to the net/http/httputil
package, as well as bug fixes to the compiler, the linker, the runtime, the go
command, and the net/http package. See the Go 1.16.7 milestone on the issue
tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.16.7+label%3ACherryPickApproved

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-08-07 18:07:50 +02:00
Fu Wei
fedd657ea0
Merge pull request #5838 from mxpv/ci
Cleanup CI
2021-08-07 11:33:14 +08:00