Skip to content
Commit 482e4e01 authored by Bot's avatar Bot
Browse files

chore(release): 1.0.0-alpha.1 [skip ci]

# 1.0.0-alpha.1 (2025-01-21)

### Bug Fixes

* allow files in labgrid_genrule's 'srcs' ([fe6666de](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/fe6666de1808e57481a54cd9535d64f0762e9349))
* bump minimum Bazel version to `7.4.0` ([ded9a866](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/ded9a8660c004f24db0af1977e7ab5d18d5c0f04))
* **config:** forward data runfiles ([122923ba](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/122923baeb356a70140642b129a4ec1a87ece8f6))
* **config:** split tools from data ([eab3953f](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/eab3953fb102a2043234d08701b1ab3956b0660f))
* **debian/launcher:** patch the ELF interpreter ([c13d3c2b](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/c13d3c2baad912877ed7b103d1844218580ccfe3))
* **debian/launcher:** return `RunEnvironmentInfo` ([132ec20a](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/132ec20abb9a83089e03fc6bcc8885b0db6aa0e7))
* **executor:** avoid setting empty LG_STATE ([6ac2640d](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/6ac2640d882feff85a3872c74d4cfd61a57afbc3))
* **executor:** catch `CalledProcessError` ([d8e89377](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/d8e89377a6c879e340c7aa703b4d969bf4f7029e))
* **executor:** catch `KeyboardInterrupt` ([6f2f5479](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/6f2f54792f6c6303ab4de3474c4eaaf60cec1ada))
* **executor:** reset RUNFILES_DIR ([ecf4ad16](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/ecf4ad16aebc9f31289f43cccdd012dd9e92b138))
* **executor:** use `[@rules](https://git.gitlab.arm.com/rules)_python#py_library` ([b9e5a75a](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/b9e5a75a6bec0420b473bd7da5c25fe4d666a3bf))
* **executor:** use `label.repo_name` ([227f5e90](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/227f5e908e270ca91723d4e18bf9d2dd0608edb4))
* **executor:** use `os.environ` as a basis for `env` ([f2d30c1b](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/f2d30c1ba5a0c1ed4b00f0d11e307bc0b6a7251f))
* **executor:** workaround running APE binaries ([27d2f038](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/27d2f0382bc6873021af02a5c6466f2bd189e2dc))
* fold `emulator` constraint setting onto `device` ([c55649b7](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/c55649b70b53c395142dc2fdfea6bca293c9c084))
* **genrule:** forward executor environment variables ([d31e01ff](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/d31e01ffff110290a2d658fd063bbcb28515bfdc))
* **genrule:** Include runfiles from binary ([660b0de2](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/660b0de2806f2bc514905da1276231e32a04c206))
* **genrule:** remove quoting of `$(OUTS)`/`$(SRCS)` ([f25ead68](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/f25ead68e872c35c68a210ca32b74b0efb0e4218))
* **genrule:** use the `default_shell_env` ([49dd3aa7](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/49dd3aa7453cb1b95d04b13304973b5426343f30))
* **labgrid_genrule:** use `@ape//ape:bash` target ([13189df7](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/13189df7544673fe3d7abed95a439d2680b090c4))
* make Python hub name unique ([25ef7842](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/25ef7842a20fe0ab558388114e08d088d4ec1301))
* permissions on qemu image resize ([58572662](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/58572662ddc08910c97f618042757bdfc7cfa82a))
* pin Debian cloud image version ([537ae9b4](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/537ae9b46b030c7703e457bc61c77284a21bfc87))
* **qemu:** set `TMPDIR` to writeable directory ([fed696f9](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/fed696f9080b16a11ef6a3e13da1ed3f9b9dd736))
* **QEMUStrategy:** add missing decorator ([cbb355ba](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/cbb355ba60a80803f05b2621359e57c2b4a3e850))
* return 'results.xml' if tests fail for 'labgrid_test' ([da39d6cf](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/da39d6cf985272ad613bfee0fe1bcb3198e11904))
* **run:** allow subprocesses to have their own runfiles ([b2537578](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/b25375784077bbe291b43e195c93a621f775f4c8))
* **run:** improve arg handling ([257abec8](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/257abec8dde188fe28ec580ab2c4cb9e2523a042))
* **run:** remove `BAZEL_GEN_DIR` base for `--get` ([0a5a4954](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/0a5a495448165b1528e0dae7db73184a6020b238))
* **Subprocess:** join `std{out,err}` lines ([a159d21c](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/a159d21c877d791558bad77967d088c7a0cd7294))
* **TemporaryDirectory:** correctly stringify paths and use tuples for commands ([be249f08](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/be249f08df8e29c2881cdf897e1c3a9458cb61f3))
* **TemporaryDirectory:** remove root on exceptions ([26085d32](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/26085d325dd7483fd75567c02d593fce9d50e3ff))
* **toolchain/executor:** correct resolved alias ([ba2ed3d6](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/ba2ed3d65104831c2485ad5a9601f17d96b85721))
* update LabGrid to `24.0a1` ([b850dbf5](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/b850dbf52adde4b6c6eaaef6a78d87b9dcf3574e))
* use hermetic OpenSSH tools ([5b35c0e0](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/5b35c0e0f531b88d5904db0fcbe321122d854c87))

### chore

* remove unused label ([bd1baa0c](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/bd1baa0cb455ee7ed841114ace7f0f6341eb048e))

### Code Refactoring

* **executor:** pass env vars in generic way ([ca2cd05f](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/ca2cd05f851659b06c0586409ee7eb2366a72cce))
* **executor:** return data rather than a `run` function ([44fb1041](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/44fb104140d7f99eb70915418e7d64341a7616ae))
* fold `labgrid_manager` into `labgrid_config` ([9bb71ee4](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/9bb71ee459e2394cc440227c6155b1e7562ef9e6))
* move `//labgrid/python` to `//labgrid:pkg` ([a4a9a153](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/a4a9a153e7c598143b5771c8e7b164fe22a1ab32))
* moving `labgrid/executor` Python targets  to `bazel/labgrid/executor` ([b87d5201](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/b87d5201c3b6f9b4461e81619d019b9e1d0d828e))
* replace config manager with a passthrough ([3963acb1](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/3963acb1022ede9c8224c0dbca8fcdc7a6a3c056))
* **run_binary:** conform directory structure ([f2a29cac](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/f2a29cacdbd253dfc290ad3427bc320186ed8491))

### Features

* **//qemu/debian/image:** increase disk space ([66a982d4](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/66a982d4fb786477fa066092e14277572955f527))
* add `[@rules](https://git.gitlab.arm.com/rules)_labgrid//labgrid/exporter` target ([be5123c9](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/be5123c9966eec674d1f4afc6f23903b7320a134))
* add `//debian/{amd64,arm64}/qemu-system-{arm,x86}` targets ([9d5f4cab](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/9d5f4cab112d81e6db8ad9c81c09bd83f15c991b))
* add `//labgrid/toolchain/qemu-system:type` toolchain ([0650f378](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/0650f378c3fc611dbf26f724ed92da7929b929a7))
* add `executor` toolchain ([5938ce1e](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/5938ce1e6ec66ae10a60746d88fa67d5adc28050))
* add `labgrid_config_toolchain` ([044a11b5](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/044a11b59437caccea7c731b55b117f5b6aa73e3))
* add `labgrid_executor` macro ([7ed0a00b](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/7ed0a00bf6085456cd43fe666aa0e40f3b071cf8))
* add `labgrid_genrule` ([139ef983](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/139ef983f285783c5da6cf9b2ce577ead384f8ee))
* add `labgrid_transition` rule ([3e197419](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/3e197419286b40ce991db466587253ba462cdae6))
* add `labgrid-client` toolchain ([7eebd427](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/7eebd427208e263e906a2cebc839f1f1fb879ad5))
* add a LabGrid executor ([2bb5aa5a](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/2bb5aa5a16c01d3e9c1b8f3b9798c252fcd17cb2))
* add a labgrid_run_binary rule ([21194a2a](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/21194a2a349b445b4746cfe88ba201062494d8ca))
* add context manager for reserve and lock ([45504da5](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/45504da5b4f92407f62f2705575a0a8aab12c833))
* add emulator constraint for QEMU ([62234fa1](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/62234fa1d1370f0cb40d56aa650dd0e36b31dc54))
* add QEMU strategy ([216797ca](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/216797ca5714ab1ad9e8e2d081b5d7bf19cdd295))
* added semantic release to bazel template ([a8a66341](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/a8a663411461dfd66fcc36635b1659a1beb3bd6b))
* adds exec/target qemu toolchain configs ([4918c981](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/4918c981e9a5929b2d13d88909dae044c8f4b1f0))
* **config_toolchain:** accept state ([f8c321cd](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/f8c321cd951f447d5718a511ed81f46fdf34d0fc))
* **config_toolchain:** expose `env` and `data` ([e9113a17](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/e9113a17f64068f3ce32bf802b31b6e309e600f8))
* **config_toolchain:** support `toolchains` ([e3bb7a33](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/e3bb7a33c9914485b478e43456195c8a06785c1d))
* **config:** accept multiple managers ([d2aa4a85](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/d2aa4a85799d3bb9a57b6059fda368592801741b))
* **config:** remove to_list when merging default info ([140dba2b](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/140dba2bb368fe4198f72743a4aad5d00cbfd7b0))
* **config:** support `$(location)` for data lookup ([c6d9ff09](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/c6d9ff0995720d68bbfa11903202abb98ad7f2a3))
* create isolated remote execution root ([5c246606](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/5c246606370e302a8a9b180523eae06f3e4f8025))
* **debian/launcher:** bake environment variables ([7f4283e1](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/7f4283e10d41870a825fab844c42722ea0ec22d9))
* **debian/launcher:** create temporary directory ([099264d4](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/099264d4007b5db7a21a53785d8c2c0819cc2cc0))
* **debian:** use the debian snapshot archive as package backup ([6f511e15](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/6f511e150728a0723901d1945b084fa31579f69b))
* **e2e:** add QEMU test ([0fee819b](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/0fee819b13aa003df1db998406d1fbebd15d1b9e))
* **e2e:** Transfer runfiles alongside binary ([923feb9b](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/923feb9b2cb212238141e9a0815ab749e825788c))
* **e2e:** Use binary that needs runfiles ([21fbbb7a](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/21fbbb7a86a8bd780458920bf98a63d6d1a1cf44))
* **executor:** all `env` keywork ([240e8448](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/240e84484a0406aad66308f3f6dba716acd8a859))
* **executor:** load extra args from root-symlinked file ([f77f96c8](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/f77f96c8b08395a02c704a703ff2b2b6d1e8fead))
* expose LabGrid Python package ([1331f3c6](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/1331f3c62d7d18ab102cfc12cd15f08fc58b6707))
* generate a seed image ([9d24c4f5](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/9d24c4f5798b27e3c39ccb100ff9e9871eb7d1f2))
* **genrule:** accept optional platform attribute ([12dc5c65](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/12dc5c657d625e2bd9e4d1d451e1d6ce3f6ffed3))
* **genrule:** add `$(RULEDIR)`/`$D` Make variable ([a60fec2e](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/a60fec2e654e34a89cb943d7feeb226464f8f4e7))
* introduce labgrid_state ([5ac438be](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/5ac438be4a1a452f2597c3ef6fbdf13e4c391ac2))
* kill labgrid_run ([6d2a0768](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/6d2a0768233efdc35c51fb9a98242f1720d85064))
* **labgrid/executor:** read `args` from runfiles ([b867756b](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/b867756bc17367cf1615de596c0d608d6a506e45))
* provide `qemu-img` toolchain ([6b8d8d3c](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/6b8d8d3c7fde3a6d81858156d9a6ab808b61a458))
* provide a mock coordinator for testing ([45626566](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/456265669ced433548249c4e49d39ed98c88e086))
* provide QEMU platforms ([e414b8fa](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/e414b8fa903079e4a4c724aa2505f7f32fecc7da))
* provide toolchain for host machine ([69fc28e0](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/69fc28e08267b432b9c5da2334786172419e05f9))
* **qemu-system:** use consistent "Make" variable name ([c301b669](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/c301b6699a57456712dfece775c21e6e7578d516))
* **QEMUStrategy:** replace `accessible` with `shell` ([8d892075](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/8d892075491132a4fd27a5c850c59cfc56337aa6))
* **qemu:** update CloudVM to latest version ([870d7130](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/870d7130981b6cb1c58b061217fe7137d531c0fa))
* **qmeu:** add `//qemu/debian:image` target to download Debian CloudVM ([18ded763](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/18ded763d74aa7c77826d32661fbad06934a899e))
* register QEMU toolchain for `arm64` ([2974243f](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/2974243fbb7d05294d085f2dfa7505bf43cfb87a))
* replace SSH key with password authentication ([ac8e8031](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/ac8e8031729917ed6c427fe42c8c80856f6dadab))
* **run:** add env variable passing ([9e797288](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/9e79728824a297110e22900ada698828eaddb0b4))
* **run:** add logging ([becce69f](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/becce69f2ee92842ac9d88a3be3a2cf8690f6fa2))
* **run:** allow optional platform transition ([43294378](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/43294378b269348f898430e0cf80d3d260036854))
* **run:** create macro to encapsulate SSH logic ([9eed0d28](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/9eed0d289689c49a1b49ce720bb9e2bcb353d8d8))
* **run:** do strategy clean-up at the end ([f05c0f8e](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/f05c0f8e8648808c472ab808d05bd86fd77d8a66))
* **run:** support transferring files back ([ba3579e5](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/ba3579e5793e5a0a54af75e8e203011f6bd893fe))
* **run:** use strategy from config ([5a954c11](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/5a954c11c2929bf436da77d7c454ac9cf195cec7)), closes [/github.com/labgrid-project/labgrid/blob/6b541210c6063e97d81e257d2d6bda1444d9ec78/labgrid/remote/client.py#L800](https://git.gitlab.arm.com//github.com/labgrid-project/labgrid/blob/6b541210c6063e97d81e257d2d6bda1444d9ec78/labgrid/remote/client.py/issues/L800)
* support generic device constraints ([d8bbbd67](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/d8bbbd672155ed658630132f1d9cd20faf14d553))
* support parallel execution in QEMU toolchains ([cc33fd5f](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/cc33fd5f5bf52cc704f9c8e27f51d8fad80bf3e7))
* **test:** allow running test executables on the device ([265e22c9](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/265e22c94a78bdce07cdd895be8086b796288309))
* **transition:** remove rule ([518bc30c](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/518bc30c234b18ae23b51dfc664289b1f0be7ebc))

### Performance Improvements

* **qemu:** enable virtualization on `arm64` ([1abc3e1c](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/1abc3e1cf03b035c3fe18ba3ea65f4930e7e38e0))
* **qemu:** increase number of vCPUs for `arm64` ([d9406f90](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/d9406f90462a8b15dc4e93fb0f13a700be55d217))
* **qemu:** use `virtio-net-pci` on `arm64` ([917bb0fa](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/917bb0fa393e14df5f8afc1058cc41013484534c))
* **qemu:** use faster pointer authentication algorithm on `arm64` ([397fea8f](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/397fea8fb51927c514fddf5dfc3391e4cb74e464))

### Reverts

* **qemu:** temporarily remove `arm64` test ([ff63d598](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/ff63d598785df43bd8aec9ea538b4d74ba1ae15b))
* use custom image with SSH and Bazelisk ([ef5993bb](https://git.gitlab.arm.com/bazel/rules_labgrid/commit/ef5993bba26962cb4e4d67812a497f1e9fe02b07))

### BREAKING CHANGES

* labgrid_run has been removed

Users need to use labgrid_genrule with //labgrid/run.
* `//constraint/emulator:qemu` is now
`//constraint/device:qemu`
* `labgrid_manager` has been removed in favour of a
`manager` attribute in `labgrid_config`

As a result, `//labgrid/manager` has now become
`//labgrid/config:manager`. Also, `//labgrid/toolchain/manager:type` has
been removed.
* `//labgrid/config:src` has been removed.
* `//labgrid/manager:config` has been replaced with
`//labgrid/manager:passthrough`.
* **executor:** `state` has been replaced by the more generic `env`

 `labgrid_config` now takes `env` instead of `state`. As a consequence,
 `//labgrid/config:state` has been replaced with `//labgrid/config:env`
 (which is private).
* **run_binary:** `labgrid_run_binary` is now loaded from `@rules_labgrid//labgrid/run/binary:defs.bzl`

This conforms to the directory layout that our rulesets follow.
* `//labgrid/python` is now `//labrid:pkg` (or `//labgrid`)

This mirrors what a `pip.parse` hub labels have.
* `//labgrid/toolchain/executor:type` has been removed. Use
`labgrid_config_toolchain` instead.

An issue has been found that prevents a LabGrid configuration being loaded
because the Python dependencies for the configuration are not available.

This manifests in the current end-to-end Docker tests as the `DockerDriver`
not being able to find the `docker` module.

The issue is that we need a `py_library` dependency for the resolved LabGrid
configuration for the target platform. However, where the toolchain gets
resolved in `labgrid_genrule` is too high up the rule graph. The resolution
needs to happen within the passed in Python tool.

This patch provides three lazily resolved labels:

- `//labgrid/config:src` (aliased as `//labgrid/config`)
- `//labgrid/config:deps`
- `//labgrid/manager:src` (aliased as `//labgrid/manager`)

A script that is provided to `labgrid_genrule` can do:

```py
py_binary(
    name = "something",
    srcs = ["something.py"],
    deps = ["@rules_labgrid//labgrid/config:deps"],
)
```

When the tool loads the LabGrid configuration from `LG_ENV`, it is guranteed to
have the correct Python dependencies available.

The crucial feature is that the labels are extract their values from two
toolchains. Two are required otherwise there is a circular dependency between
the manager and the configuration.

- `//labgrid/toolchain/config:type`
- `//labgrid/toolchain/manager:type`

To do the lazy resolution of the toolchain, we do a configuration trick to
transition further down the stack back into the target/exec combo that
`labgrid_genrule` is in. This is contained under `//labgrid/cfg`. The way this
works is:

- `labgrid_genrule` uses `//labgrid/cfg/store.bzl` as an incoming transition
- That transition stores the current platform in `//labgrid/cfg:platform`
- Later, the `/labgrid/{config,manager}` targets use the `//labgrid/cfg/unstore.bzl`
  transition to put `//labgrid/cfg:platform` back into the target platform
- Those rules then resolve the toolchains to get the registered information for
  the LabGrid target platform

As of this patch, the Docker end-to-end test shows an example of the usage of
`labgrid_config_toolchain`. `bazelisk test docker:test` has the same operation as
before.
* `@rules_labgrid//labgrid/executor:manager` is now `@rules_labgrid//bazel/labgrid/executor`
* **executor:** LabGrid context managers now return `labgrid.manager#Data` rather than `Run` functions.
parent 354018ee
Loading
Loading
Loading
Pipeline #20426 skipped