Skip to content

Commit

Permalink
Update changelog and documentation for v0.8.5 (#3882)
Browse files Browse the repository at this point in the history
Co-authored-by: Alex Couture-Beil <alex@earthly.dev>
Co-authored-by: Mike Holly <mikejholly@gmail.com>
  • Loading branch information
3 people committed Mar 11, 2024
1 parent 374c60b commit a6b5b8d
Show file tree
Hide file tree
Showing 3 changed files with 73 additions and 35 deletions.
15 changes: 15 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,25 @@ All notable changes to [Earthly](https://github.com/earthly/earthly) will be doc

## Unreleased

## v0.8.5 - 2024-03-11

### Added

- Added `--aws` flag to `RUN` command which makes AWS environment variables or ~/.aws available. Enable with the `VERSION --run-with-aws` feature flag. [#3803](https://github.com/earthly/earthly/issues/3803)
- Added `--allow-privileged` flag to `FROM DOCKERFILE` command. Enable with the `VERSION --allow-privileged-from-dockerfile` feature flag. Thanks to [@dustyhorizon](https://github.com/dustyhorizon) for the contribution! [#3706](https://github.com/earthly/earthly/issues/3706)

### Fixed

- Fixes an issue where wildcard `BUILD`'s are invoked from a relative directory (e.g., an `Earthfile` containing `BUILD ./*+test` invoked with `earthly ./rel-dir+target`). [#3840](https://github.com/earthly/earthly/issues/3840)
- `--pass-args` will no longer pass builtin args, which would result in `value cannot be specified for built-in build arge errors. [#3775](https://github.com/earthly/earthly/issues/3775)
- Fixes a parsing issue with `BUILD` flag arguments and wildcard targets [#3862](https://github.com/earthly/earthly/issues/3862)
- `BUILD --auto-skip` was silently ignored when the feature flag (`VERSION --build-auto-skip`) was missing [#3870](https://github.com/earthly/earthly/issues/3870)
- Fix an issue where `COPY --if-exists` would fail if the non-existing directory includes a wildcard. [#3875](https://github.com/earthly/earthly/issues/3875)
- Fixes an issue with passing the correct org value to Logstream which resulted in missing logs in the web builds view (https://cloud.earthly.dev/your-org/builds).
- Rename `UDC` to `FUNCTION` in hint when a secret is not found.

### Additional Info
- This release includes changes to buildkit

## v0.8.4 - 2024-02-21

Expand Down
19 changes: 19 additions & 0 deletions docs/earthfile/earthfile.md
Original file line number Diff line number Diff line change
Expand Up @@ -356,6 +356,15 @@ build:
RUN --interactive-keep bash
```

##### `--aws` (experimental)

{% hint style='info' %}
##### Note
The `--aws` flag has experimental status. To use this feature, it must be enabled via `VERSION --run-with-aws 0.8`.
{% endhint %}

Makes AWS credentials available to the executed command via the host's environment variables or ~/.aws directory.

## COPY

#### Synopsis
Expand Down Expand Up @@ -1056,6 +1065,16 @@ Specifies the platform to build on.

For more information see the [multi-platform guide](../guides/multi-platform.md).

#### `--allow-privileged` (experimental)

{% hint style='info' %}
##### Note
The `--allow-privileged` flag has experimental status. To use this feature, it must be enabled via `VERSION --allow-privileged-from-dockerfile 0.8`.
{% endhint %}

When the Dockerfile build context points to an earthly artifact reference (e.g. `+mybuildcontext/mydata/*`), the `allow-privileged` flag will allow `RUN` commands under the referenced earthly target to make use of the `RUN --privileged` option.
This does not apply to Dockerfile's [RUN --security](https://docs.docker.com/reference/dockerfile/#run---security) flag.

## WITH DOCKER

#### Synopsis
Expand Down
74 changes: 39 additions & 35 deletions docs/earthfile/features.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,41 +51,45 @@ VERSION [<flags>...] <version-number>

## Feature flags

| Feature flag | Status | Description |
|-------------------------------------|--------------|--------------------------------------------------------------------------------------------------------------------|
| `--use-registry-for-with-docker` | 0.5 | Makes use of the embedded BuildKit Docker registry (instead of tar files) for `WITH DOCKER` loads and pulls |
| `--use-copy-include-patterns` | 0.6 | Speeds up COPY transfers |
| `--referenced-save-only` | 0.6 | Changes the behavior of SAVE commands in a significant way |
| `--for-in` | 0.6 | Enables support for `FOR ... IN ...` commands |
| `--require-force-for-unsafe-saves` | 0.6 | Requires `--force` for saving artifacts locally outside the Earthfile's directory |
| `--no-implicit-ignore` | 0.6 | Eliminates implicit `.earthlyignore` entries, such as `Earthfile` and `.tmp-earthly-out` |
| `--earthly-version-arg` | 0.7 | Enables builtin ARGs: `EARTHLY_VERSION` and `EARTHLY_BUILD_SHA` |
| `--shell-out-anywhere` | 0.7 | Allows shelling-out in any earthly command (including in the middle of `ARG`) |
| `--explicit-global` | 0.7 | Base target args must have a `--global` flag in order to be considered global args |
| `--check-duplicate-images` | 0.7 | Check for duplicate images during output |
| `--use-cache-command` | 0.7 | Allow use of `CACHE` command in Earthfiles |
| `--use-host-command` | 0.7 | Allow use of `HOST` command in Earthfiles |
| `--use-copy-link` | 0.7 | Use the equivalent of `COPY --link` for all copy-like operations |
| `--new-platform` | 0.7 | Enable new platform behavior |
| `--no-tar-build-output` | 0.7 | Do not print output when creating a tarball to load into `WITH DOCKER` |
| `--use-no-manifest-list` | 0.7 | Enable the `SAVE IMAGE --no-manifest-list` option |
| `--use-chmod` | 0.7 | Enable the `COPY --chmod` option |
| `--earthly-locally-arg` | 0.7 | Enable the `EARTHLY_LOCALLY` arg |
| `--use-project-secrets` | 0.7 | Enable project-based secret resolution |
| `--use-pipelines` | 0.7 | Enable the `PIPELINE` and `TRIGGER` commands |
| `--earthly-git-author-args` | 0.7 | Enable the `EARTHLY_GIT_AUTHOR` and `EARTHLY_GIT_CO_AUTHORS` args |
| `--wait-block` | 0.7 | Enable the `WAIT` / `END` block commands |
| `--no-network` | 0.8 | Allow the use of `RUN --network=none` commands |
| `--arg-scope-and-set` | 0.8 | Enable the `LET` / `SET` commands and nested `ARG` scoping |
| `--use-docker-ignore` | 0.8 | Enable the use of `.dockerignore` files in `FROM DOCKERFILE` targets |
| `--pass-args` | 0.8 | Enable the optional `--pass-args` flag for the `BUILD`, `FROM`, `COPY`, `WITH DOCKER --load` commands |
| `--global-cache` | 0.8 | Enable global caches (shared across different Earthfiles), for cache mounts and `CACHE` commands having an ID |
| `--cache-persist-option` | 0.8 | Adds `CACHE --persist` option to persist cache content in images, Changes default `CACHE` behaviour to not persist |
| `--use-function-keyword` | 0.8 | Enable using `FUNCTION` instead of `COMMAND` when declaring a function |
| `--use-visited-upfront-hash-collection` | 0.8 | Switches to a newer target parallelization algorithm |
| `--no-use-registry-for-with-docker` | Experimental | Disable `use-registry-for-with-docker` |
| `--try` | Experimental | Enable the `TRY` / `FINALLY` / `END` block commands |
| `--earthly-ci-runner-arg` | Experimental | Enable the `EARTHLY_CI_RUNNER` builtin ARG |
| Feature flag | Status | Description |
|-----------------------------------------|---------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------|
| `--use-registry-for-with-docker` | 0.5 | Makes use of the embedded BuildKit Docker registry (instead of tar files) for `WITH DOCKER` loads and pulls |
| `--use-copy-include-patterns` | 0.6 | Speeds up COPY transfers |
| `--referenced-save-only` | 0.6 | Changes the behavior of SAVE commands in a significant way |
| `--for-in` | 0.6 | Enables support for `FOR ... IN ...` commands |
| `--require-force-for-unsafe-saves` | 0.6 | Requires `--force` for saving artifacts locally outside the Earthfile's directory |
| `--no-implicit-ignore` | 0.6 | Eliminates implicit `.earthlyignore` entries, such as `Earthfile` and `.tmp-earthly-out` |
| `--earthly-version-arg` | 0.7 | Enables builtin ARGs: `EARTHLY_VERSION` and `EARTHLY_BUILD_SHA` |
| `--shell-out-anywhere` | 0.7 | Allows shelling-out in any earthly command (including in the middle of `ARG`) |
| `--explicit-global` | 0.7 | Base target args must have a `--global` flag in order to be considered global args |
| `--check-duplicate-images` | 0.7 | Check for duplicate images during output |
| `--use-cache-command` | 0.7 | Allow use of `CACHE` command in Earthfiles |
| `--use-host-command` | 0.7 | Allow use of `HOST` command in Earthfiles |
| `--use-copy-link` | 0.7 | Use the equivalent of `COPY --link` for all copy-like operations |
| `--new-platform` | 0.7 | Enable new platform behavior |
| `--no-tar-build-output` | 0.7 | Do not print output when creating a tarball to load into `WITH DOCKER` |
| `--use-no-manifest-list` | 0.7 | Enable the `SAVE IMAGE --no-manifest-list` option |
| `--use-chmod` | 0.7 | Enable the `COPY --chmod` option |
| `--earthly-locally-arg` | 0.7 | Enable the `EARTHLY_LOCALLY` arg |
| `--use-project-secrets` | 0.7 | Enable project-based secret resolution |
| `--use-pipelines` | 0.7 | Enable the `PIPELINE` and `TRIGGER` commands |
| `--earthly-git-author-args` | 0.7 | Enable the `EARTHLY_GIT_AUTHOR` and `EARTHLY_GIT_CO_AUTHORS` args |
| `--wait-block` | 0.7 | Enable the `WAIT` / `END` block commands |
| `--no-network` | 0.8 | Allow the use of `RUN --network=none` commands |
| `--arg-scope-and-set` | 0.8 | Enable the `LET` / `SET` commands and nested `ARG` scoping |
| `--use-docker-ignore` | 0.8 | Enable the use of `.dockerignore` files in `FROM DOCKERFILE` targets |
| `--pass-args` | 0.8 | Enable the optional `--pass-args` flag for the `BUILD`, `FROM`, `COPY`, `WITH DOCKER --load` commands |
| `--global-cache` | 0.8 | Enable global caches (shared across different Earthfiles), for cache mounts and `CACHE` commands having an ID |
| `--cache-persist-option` | 0.8 | Adds `CACHE --persist` option to persist cache content in images, Changes default `CACHE` behaviour to not persist |
| `--use-function-keyword` | 0.8 | Enable using `FUNCTION` instead of `COMMAND` when declaring a function |
| `--use-visited-upfront-hash-collection` | 0.8 | Switches to a newer target parallelization algorithm |
| `--no-use-registry-for-with-docker` | Experimental | Disable `use-registry-for-with-docker` |
| `--try` | Experimental | Enable the `TRY` / `FINALLY` / `END` block commands |
| `--earthly-ci-runner-arg` | Experimental | Enable the `EARTHLY_CI_RUNNER` builtin ARG |
| `--wildcard-builds` | Experimental | Alow for the expansion of wildcard (glob) paths for BUILD commands |
| `--build-auto-skip` | Experimental | Allow for `--auto-skip` to be used on individual BUILD commands |
| `--allow-privileged-from-dockerfile` | Experimental | Allow the use of the `--allow-privileged` flag in the `FROM DOCKERFILE` command |
| `--run-with-aws` | Experimental | Make AWS credentials in the environment or ~/.aws available to `RUN` commands |

Note that the features flags are disabled by default in Earthly versions lower than the version listed in the "status" column above.

Expand Down

0 comments on commit a6b5b8d

Please sign in to comment.