runfinch / finch

The Finch CLI is an open source client for container development
https://www.runfinch.com
Apache License 2.0
3.59k stars 95 forks source link

feat: Add Dockercompat Mode & DevContainer Support #1100

Closed chews93319 closed 2 months ago

chews93319 commented 2 months ago

Issue #, if available: #387, #745

Description of changes: This PR will introduce parsing changes to support docker compatibility for various DevContainer invocations from VsCode. The introduction of dockercompat: true within Finch configuration will specifically activate certain Finch behavior to map Docker cli arguments to compatible nerdctl arguments.

Testing done:

License Acceptance

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

chews93319 commented 2 months ago

With commit 999371ea, I resolved the buildx bug and confirmed that the handleCache is actually working correctly and extracting the "consistency" strings from the args.

Unfortunately, my devContainers experiment was now able to build an image, but unable to open it due to the length of identifier.

FATA[0000] invalid name "vsc-arbtest_devcontainers_features-f31e83368f02f49b07b37f8b815ef72280fdebe4e5bb5de366af337b5e70ae4a-features-62cc1": identifier "vsc-arbtest_devcontainers_features-f31e83368f02f49b07b37f8b815ef72280fdebe4e5bb5de366af337b5e70ae4a-features-62cc1" greater than maximum length (76 characters): invalid argument 
chews93319 commented 2 months ago

The update to commit 9672022 is an incremental improvement: