Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

exp: make finch work on windows with wsl2 #649

Merged
merged 73 commits into from
Jan 10, 2024
Merged

exp: make finch work on windows with wsl2 #649

merged 73 commits into from
Jan 10, 2024

Conversation

vsiravar
Copy link
Contributor

@vsiravar vsiravar commented Oct 17, 2023

Issue #, if available:

Description of changes:

  • translation logic to wsl paths
  • persistent disk for windows
  • CI/CD (workflows to run CI on every PR on windows runners, MSI builder, Windows release automation)

This PR combines 4 distinct PRs to a separate windev branch.

This PR also contains bug fixes and modifications to e2e tests.
Testing done:
Yes

  • I've reviewed the guidance in CONTRIBUTING.md

License Acceptance

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@vsiravar vsiravar requested a review from a team as a code owner October 17, 2023 21:09
vsiravar and others added 29 commits October 17, 2023 14:09
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*
- introduces aliases for nerdctl commands. Eg `nerdctl run` is
equivalent to `nerdctl container run`. cli commands are restructured
based on https://www.docker.com/blog/whats-new-in-docker-1-13/ ,
`nerdctl container run` is the recommended way of using the cli. This
also helps in handling options for commands and avoids duplication for
having to handle the same options for equivalent commands such as `run`
and `container run`.
- introduces command handlers. command handlers are functions that
handle arguments of a specific command. For example `cpHandler`, handles
`nerdctl cp` command. It has a one to one mapping with nerdctl commands
that need command handling.
- introduces argHandlers, which handle particular options in nerdctl
commands. These are not tied to a specific command. For instance
`handleFilePath` function can handle `-f/--file` option in `nerdctl
build`. It can also handle `--label-file` in `nerdctl run` command. The
mapping is defined by `argHandlerMap`.

*Testing done:*
Yes, unit tests added for cmdhandler and argHandlers. all container e2e
tests and passed.

-----
#### Notes
There were several options considered for translating windows filepaths
to wsl filepaths for nerdctl commands.

* add logic
[handleEnv](https://github.com/runfinch/finch/blob/main/cmd/finch/nerdctl.go#L229)
function to handle options. This approach had several disadvantages
* options require different handling depending on the command. For
instance -f/--file option in build command has different semantics to -f
in rm command.
    *  Not extensible if new options are added to nerdctl command.
* search and replace. match every argument in a nerdctl to a windows
filepath. If a match is found then replace it with it's equivalent wsl
filepath. This approach also has a couple of problems.

* There is no perfect regex to match windows paths in nerdctl commands.
Windows paths can have spaces and can also be relative paths and when
used in conjunction with nerdctl commands there is ambiguity. Eg nerdctl
cp C:\\Test USER conname:<containerpath>. Do we match C:\\Test USER or
C:\\Test USER conname since both are valid windows paths.
* Matching every argument adds to the computation cost of parsing
nerdctl commands.

Therefore the choice was made to have a mapping between commands and
options with the path translation logic which can guarantee correctness
in handling nerdctl arguments(if implemented correctly :) ) and is
extensible.

For macOS, the handers are no-op. We can refactor [handling logic
](https://github.com/runfinch/finch/blob/main/cmd/finch/nerdctl.go#L229)
in a later PR.

-------

- [X] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

---------

Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*

keep windev submodules up to date to unblock CI changes

*Testing done:*

- [x] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Gavin Inglis <giinglis@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
~~**Do not merge**~~
Issue #, if available:

*Description of changes:*
Fix all lint errors in windows.
*Testing done:*
Yes. Unit test and golangci-lint.

- [X] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

---------

Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

Mismatch in rootfs between finch and finch-core on respective windev
branches - both in the version and in the file referenced. finch-core is
correctly providing full .tar.gz extension and latest rootfs.

Evident in jobs:

*
https://github.com/runfinch/finch/actions/runs/6386280972/job/17332665289?pr=584
*
https://github.com/runfinch/finch/actions/runs/6386379434/job/17332965393?pr=584

*Description of changes:*

*Testing done:*

Validated on windows dev instance.

- [x] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Gavin Inglis <giinglis@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*

Update project submodules for Windows development.

*Testing done:*

- [x] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Gavin Inglis <giinglis@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:
Add GOOS to golangci-lint. Currently the golangci-lint runs on ubuntu.
*Description of changes:*
- Change target lint in makefile to run linter for both windows and
macOS.
- Update ci.yaml to lint on macOS and windows github hosted runners.
*Testing done:*
Makefile changes validated.

- [X] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

---------

Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*
- Adds persistent disk support to Windows
- This took more work than anticipated, in order to deal with non-Admin
users
- `pkg/disk/dpgo/` is brand new code, and should be a focus of the
review
- `pkg/winutil/run_windows.go` is also new and requires careful review.
This is what allows Finch to run as the regular user, except for when it
needs Admin access to call `diskpart` (to create the persistent disk)
- Fix paths in `nerdctl_config_applier` to make the post-boot/init
shelling work
- Added winres to allow the finch.exe to have metadata attached to it.
This is WIP, need final icons and descriptions etc.
- Large (in terms of lines changed) refactor of `pkg/path/finch.go`, but
it should have no impact on functionality (needs careful review)
- Fixed the Makefile's `clean` target for Windows
- Most of the other changes are just noise from refactoring (like,
literally renaming things). Nothing major, but take a look if possible.
Sorry the diff is so large

*Testing done:*

- [x] I've reviewed the guidance in CONTRIBUTING.md

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

---------

Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Signed-off-by: Justin Alvarez <alvajus@amazon.com>
Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <siravara@amazon.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*
Update run tests related to cgroup v2 resource flag tests for windows.

In wsl2 cgroup v2 is mounted at /sys/fs/cgroup/unified but containerd
expects it to be mounted at /sys/fs/cgroup
https://github.com/containerd/cgroups/blob/cc78c6c1e32dc5bde018d92999910fdace3cfa27/utils.go#L36.

Enabling cgroup v2 requires extra tweaks in wsl 2 based on
https://stackoverflow.com/questions/73021599/how-to-enable-cgroup-v2-in-wsl2
*Testing done:*
Yes.

- [X] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

---------

Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*
Fix filepath in `nerdctl_config_applier_test.go`
*Testing done:*
Yes, locally.

- [X] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*
- fix unit tests for darwin
- multi line comment for golinter
- remove duplicate test in config_test.go

*Testing done:*
Yes, locally.

- [X] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*

`go mod tidy`

*Testing done:*

- [x] I've reviewed the guidance in CONTRIBUTING.md

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Gavin Inglis <giinglis@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*
Fix finch config test
*Testing done:*
Yes, locally.

- [X] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*
- use `cmd /c ver` to get windows version.
- fix regex for windows path
*Testing done:*
Yes, support bundle generated locally.

- [X] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*

Update submodules

*Testing done:*

- [x] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Gavin Inglis <giinglis@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*
  - Pinned all actions to commit SHAs
    - Just used the latest available version
- Dependabot should actually update the version comment too, thanks to
[this
feature](dependabot/dependabot-core#4691),
which is pretty neat
- `Homebrew/actions/setup-homebrew` isn't really "vended" and the
recommendation is to just use the latest master commit of the repo,
which is why the version name just says "master"
- `WyriHaximus/github-action-get-previous-tag` hasn't been updated in a
while and the functionality doesn't seem that hard to replicate on our
own. Might be good to remove it in the future

*Testing done:*

- [x] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Justin Alvarez <alvajus@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*
- change path -> filepath
- close files after opening, since can't delete on windows without
close.

*Testing done:*
Yes, all support bundle e2e tests.

- [X] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*

upstream dependency go-winres uses `git tag` to embed versioning in
Windows binary. However, if the repo from which finch is being built has
no tags, build will fail. Add note on how to fetch upstream finch tags.

See tc-hib/go-winres#16

*Testing done:*

- [x] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Gavin Inglis <giinglis@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*

Address all linter findings, including ignoring gosec warnings about
auditing the use of unsafe pointers in pkg/winutil/run_windows.go

https://securego.io/docs/rules/g103.html

*Testing done:*

`make lint`

- [x] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Gavin Inglis <giinglis@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*
Bump common-tests to v0.7.7
*Testing done:*
Yes. See https://github.com/runfinch/finch/actions/runs/6434443967

- [X] I've reviewed the guidance in CONTRIBUTING.md

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:
Mitigate excessive permissions on files and directory creation.
*Description of changes:*
- sets restrictive permissions on files to 0o600 and 0o700 for creating
directories.
*Testing done:*
Yes, unit tests and sanity checks.

```
 grep -RE '[0-9]o[0-9]{3}' --include='*.go' --exclude='*_test.go'
./benchmark/suite.go:                   `, alpineImage)), 0o600)
./deps/finch-core/src/lima/pkg/yqutil/yqutil.go:        err = os.WriteFile(tmpYAMLPath, content, 0o600)
./deps/finch-core/src/lima/pkg/editutil/editutil.go:            0o600); err != nil {
./pkg/config/config.go: if err := afero.WriteFile(fs, path, cfgBuf, 0o600); err != nil {
./pkg/config/config.go:         if err := fs.Mkdir(path, 0o700); err != nil {
./pkg/config/nerdctl_config_applier.go:         if err := afero.WriteFile(fs, profileFilePath, []byte(profBufWithCmd), 0o600); err != nil {
./pkg/config/nerdctl_config_applier.go: if err := fs.MkdirAll(path.Dir(cfgPath), 0o700); err != nil {
./pkg/config/nerdctl_config_applier.go:         if err := afero.WriteFile(fs, cfgPath, []byte{}, 0o600); err != nil {
./pkg/config/nerdctl_config_applier.go: if err := afero.WriteFile(fs, cfgPath, updatedCfg, 0o600); err != nil {
./pkg/config/lima_config_applier.go:            if err := afero.WriteFile(lca.fs, lca.limaConfigPath, []byte(""), 0o600); err != nil {
./pkg/config/lima_config_applier.go:    if err := afero.WriteFile(lca.fs, lca.limaConfigPath, limaCfgBytes, 0o600); err != nil {
./pkg/dependency/vmnet/update_override_lima_config_unix.go:     f, err := overConf.fs.OpenFile(filePath, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0o644)
./pkg/dependency/credhelper/cred_helper_binary.go:                      file, err := bin.fs.OpenFile(cfgPath, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0o600)
./pkg/dependency/credhelper/cred_helper_binary.go:      err = bin.fs.Chmod(bin.fullInstallPath(), 0o700)
./pkg/disk/disk_unix.go:                        if err := m.fs.MkdirAll(disksDir, 0o700); err != nil {
./pkg/disk/disk_windows.go:             if err := m.fs.MkdirAll(disksDir, 0o700); err != nil {
./pkg/disk/disk_windows.go:             if err := m.fs.MkdirAll(disksDir, 0o700); err != nil {

```

- [X] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*
- Refactor credhelper and remove hard-coded paths.
*Testing done:*
Yes, can push to ECR

```
 cat .\config.json
{"credsStore":"ecr-login"}

PS C:\Users\Administrator> finch build -t test-ecr-from-local .
PS C:\Users\Administrator> finch tag test-ecr-from-local:latest 065363855432.dkr.ecr.us-east-2.amazonaws.com/test-ecr-from-local:latest
PS C:\Users\Administrator> finch tag test-ecr-from-local:latest 065363855432.dkr.ecr.us-east-2.amazonaws.com/test-ecr-from-local:latest^C
PS C:\Users\Administrator> finch push 065363855432.dkr.ecr.us-east-2.amazonaws.com/test-ecr-from-local:latest
INFO[0000] pushing as a reduced-platform image (application/vnd.docker.distribution.manifest.v2+json, sha256:317cda6f2c180388322d9134cf8976aac777a5d6cf1a56161ac22e996a1df051)
manifest-sha256:317cda6f2c180388322d9134cf8976aac777a5d6cf1a56161ac22e996a1df051: done           |++++++++++++++++++++++++++++++++++++++|
config-sha256:1cad2846fc76fdde7217fb06db38fbcdccaed71baccc30a7e8ec70f095ea3d11:   done           |++++++++++++++++++++++++++++++++++++++|
elapsed: 1.1 s                                                                    total:  1.1 Ki (1001.0 B/s)
```

- [X] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*

disks in the list format in lima override.yaml were not being
unmarshalled properly, causing a disk with the name "" to be mixed with
finch lima yaml, resulting in startup failure. This only occurs on inits
of a vm other than the very first init. init a vm the first time,
_output/lima/data/_config/override.yaml:

```yaml
additionalDisks:
    - name: finch
```

stop and remove the vm, then re-init:
```yaml
additionalDisks:
    - name: ""
    - name: finch
```

to fix, copy upstream logic from lima to use a custom unmarshaler for
the Disk type.

*Testing done:*

`make test-unit`

manual testing

- [x] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Gavin Inglis <giinglis@amazon.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
Issue #, if available:

*Description of changes:*
- fix path for deleting persistent disk for windows for cleanup in e2e
tests
- fix path for finch config e2e vm test
*Testing done:*

Yes, locally

- [X] I've reviewed the guidance in CONTRIBUTING.md

#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

---------

Signed-off-by: Vishwas Siravara <vsiravar@gmail.com>
Co-authored-by: Vishwas Siravara <vsiravar@gmail.com>
Signed-off-by: Vishwas Siravara <siravara@amazon.com>
pendo324 and others added 2 commits January 3, 2024 19:17
Signed-off-by: Justin Alvarez <alvajus@amazon.com>
@pendo324
Copy link
Member

pendo324 commented Jan 4, 2024

Decided to merge commit instead of rebase since the diff was so extensive.

There's a few missed merge changes (due to file name changes/splits) which are causing the windows unit tests to fail, and the windows e2e runner looks like its having issues. Should have things back up and running by tomorrow.

Signed-off-by: Justin Alvarez <alvajus@amazon.com>
Signed-off-by: Justin Alvarez <alvajus@amazon.com>
@pendo324
Copy link
Member

pendo324 commented Jan 5, 2024

Seems like the recently added test that's failing for the build --ssh command requires a more involved fix, and the prioritization of how many users actually use Windows's optional OpenSSH tooling is not really known right now.

I've documented the reasons why the test is failing, and some future work to fix it on Windows, in . I'm going to make a PR to common-tests to disable it on Windows until a workaround is implemented.

pendo324 added a commit to runfinch/common-tests that referenced this pull request Jan 5, 2024
Issue #, if available: runfinch/finch#750,
runfinch/finch#649

*Description of changes:*
- Disable build --ssh test when running on Windows

*Testing done:*
- Ran test suite on Windows machine, and it skipped as expected
```
  [SKIPPED] non-functional on Windows, see runfinch/finch#750
  In [It] at: C:/Users/Administrator/Code/common-tests/tests/build.go:131 @ 01/05/24 20:18:38.223
------------------------------
[SynchronizedAfterSuite]
C:/Users/Administrator/Code/common-tests/run/run_test.go:36
  ef5e5b2ec9fd42f39e6c3a3daac04488b0d7c434446b18eaf4c7c7b6e9cc4ea0
  ef5e5b2ec9fd42f39e6c3a3daac04488b0d7c434446b18eaf4c7c7b6e9cc4ea0
  0a182cb82c93
  Untagged: public.ecr.aws/docker/library/registry:latest@sha256:0a182cb82c93939407967d6d71d6caf11dcef0e5689c6afe2d60518e3b34ab86
  Deleted: sha256:9fe9a137fd002363ac64f5af66146702432b638a83ee0c5b620c40a9e433e813
  Deleted: sha256:d9bce47b357e434a4b294543f1f58cf3113de1d5356dfcb0c67fad2af92f8633
  Deleted: sha256:afcdb1715fb302c8cefa6e90a55c096e13a8d49faee6daaf7745dc0f95f9e90d
  Deleted: sha256:9f383ae4f64d95caaff5c106cf502c1a6f65617a4de01f2cad10353c0e825f5c
  Deleted: sha256:645ddea727356ff8ceb7f90d5ac0aee83bff1ac1ddae1f964228c3051ea50f50
[SynchronizedAfterSuite] PASSED [3.579 seconds]
------------------------------

Ran 0 of 1 Specs in 25.101 seconds
SUCCESS! -- 0 Passed | 0 Failed | 0 Pending | 1 Skipped
```

- [x] I've reviewed the guidance in CONTRIBUTING.md


#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Justin Alvarez <alvajus@amazon.com>
Signed-off-by: Justin Alvarez <alvajus@amazon.com>
pendo324 added a commit to runfinch/finch-core that referenced this pull request Jan 9, 2024
…agent communication (#227)

Issue #, if available: e2e test failures on
runfinch/finch#649

*Description of changes:*
- Track Lima commit that fixes underlying issue with guestagent
communication, which ultimately breaks port forwarding (which is why the
e2e tests are failing). See lima-vm/lima#2118
for more details

*Testing done:*
- tested on a Windows machine by compiling Lima

- [x] I've reviewed the guidance in CONTRIBUTING.md


#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Justin Alvarez <alvajus@amazon.com>
Signed-off-by: Justin Alvarez <alvajus@amazon.com>
Signed-off-by: Justin Alvarez <alvajus@amazon.com>
Signed-off-by: Justin Alvarez <alvajus@amazon.com>
Signed-off-by: Justin Alvarez <alvajus@amazon.com>
Signed-off-by: Justin Alvarez <alvajus@amazon.com>
Signed-off-by: Justin Alvarez <alvajus@amazon.com>
@pendo324 pendo324 merged commit 31cdc41 into main Jan 10, 2024
26 checks passed
@pendo324 pendo324 deleted the windev branch January 10, 2024 16:19
pendo324 added a commit that referenced this pull request Jan 31, 2024
Issue #, if available:

*Description of changes:*
Now that all infra/CI is setup and has been working stably for a few
weeks, its time to mark Windows as a new "feature" so we can update
Finch's next version number for the next release (tracked at #748).

Original Windows PR for reference:
#649.

*Testing done:*



- [x] I've reviewed the guidance in CONTRIBUTING.md


#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Justin Alvarez <alvajus@amazon.com>
mharwani pushed a commit that referenced this pull request Jan 31, 2024
🤖 I have created a release *beep* *boop*
---


## [1.1.0](v1.0.1...v1.1.0)
(2024-01-31)


### Build System or External Dependencies

* **deps:** Bump github.com/aws/aws-sdk-go-v2 from 1.24.0 to 1.24.1
([#749](#749))
([c3ae967](c3ae967))
* **deps:** Bump github.com/containerd/containerd from 1.7.10 to 1.7.11
([#742](#742))
([7d1e250](7d1e250))
* **deps:** Bump github.com/docker/docker from 24.0.7+incompatible to
25.0.1+incompatible
([#772](#772))
([b16f6ae](b16f6ae))
* **deps:** Bump github.com/lima-vm/lima from 0.19.0 to 0.20.0
([#769](#769))
([7f0c86e](7f0c86e))
* **deps:** Bump github.com/onsi/ginkgo/v2 from 2.13.2 to 2.14.0
([#758](#758))
([7d3a7c8](7d3a7c8))
* **deps:** Bump github.com/onsi/gomega from 1.30.0 to 1.31.1
([#768](#768))
([889abf8](889abf8))
* **deps:** Bump github.com/runfinch/common-tests from 0.7.11 to 0.7.12
([#761](#761))
([bb17a96](bb17a96))
* **deps:** Bump github.com/shirou/gopsutil/v3 from 3.23.11 to 3.23.12
([#744](#744))
([eb55877](eb55877))
* **deps:** Bump golang.org/x/crypto from 0.16.0 to 0.18.0
([#751](#751))
([fc434ac](fc434ac))
* **deps:** Bump golang.org/x/image from
0.0.0-20210220032944-ac19c3e999fb to 0.10.0
([#752](#752))
([9a08b45](9a08b45))
* **deps:** Bump golang.org/x/tools from 0.16.0 to 0.16.1
([#734](#734))
([efecfca](efecfca))
* **deps:** Bump golang.org/x/tools from 0.16.1 to 0.17.0
([#757](#757))
([89623da](89623da))
* **deps:** Bump submodules and dependencies
([#733](#733))
([8b2d8cd](8b2d8cd))


### Experimental

* make finch work on windows with wsl2
([#649](#649))
([31cdc41](31cdc41))


### Features

* upgrade Windows support to "feature"
([#778](#778))
([63894d1](63894d1))


### Bug Fixes

* properly reload persistent snapshotter data and restart services
([#767](#767))
([700cb92](700cb92))
* temporarily switch to our own nerdctl-full bundle with patched runc
and buildkit ([#783](#783))
([f677e2e](f677e2e))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@pendo324 pendo324 mentioned this pull request Feb 20, 2024
5 tasks
pendo324 pushed a commit that referenced this pull request Jun 21, 2024
Issue #, if available:
#986 is currently blocked on merge due to required CI job checks not
matching the expected naming in the branch protection ruleset. The
`go-linter` job was renamed in #649 to `lint` and `unit-test` and
`gen-code-no-diff` were expanded for the Windows platform.

*Description of changes:*
This change updates the docs CI job to match the expected job names in
the branch protection ruleset.

*Testing done:*
Manually verified the branch protection ruleset name matches.

- [x] I've reviewed the guidance in CONTRIBUTING.md


#### License Acceptance

By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license.

Signed-off-by: Austin Vazquez <macedonv@amazon.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants