particle-os-cli/template/templates/modules/copy
xyny f89fa3f159
fix: add typespec schemas for cli modules, remove modules.json (not needed anymore) (#209)
The website build process now uses the GitHub API to generate a global
`modules.json`. If you decide to move the directory containing all the
modules, please tell me, or make a PR changing [this
line](9eb198c4e5/astro.config.mjs (L102)).
If you don't, I'll find out anyways, because the website builds will
break.

Also, whenever updating the modules, make sure the schema is updated too
to match the current state of the module. If you need help with writing
[TypeSpec](https://typespec.io/), consult me, but you probably wont,
since it's just a type system kind of like TypeScript's or Rust's .
2024-07-27 10:31:52 -04:00
..
copy.j2 feat: Stages (#173) 2024-05-18 13:23:50 +00:00
copy.tsp fix: add typespec schemas for cli modules, remove modules.json (not needed anymore) (#209) 2024-07-27 10:31:52 -04:00
module.yml fix: add typespec schemas for cli modules, remove modules.json (not needed anymore) (#209) 2024-07-27 10:31:52 -04:00
README.md fix: add typespec schemas for cli modules, remove modules.json (not needed anymore) (#209) 2024-07-27 10:31:52 -04:00

copy

:::caution Only compiler-based builds can use this module as it is built-in to the BlueBuild CLI tool. :::

:::note NOTE: This module is currently only available with the use_unstable_cli option on the GHA or using the main image. :::

The copy module is a short-hand method of adding a COPY instruction into the image. This can be used to copy files from images, other stages, or even from the build context.

Usage

The copy module's properties are a 1-1 match with the COPY instruction containing src, dest, and from (optional). The example below will COPY the file /usr/bin/yq from docker.io/mikefarah/yq into /usr/bin/.

modules:
- type: copy
  from: docker.io/mikefarah/yq
  src: /usr/bin/yq
  dest: /usr/bin/

Creating an instruction like:

COPY --linked --from=docker.io/mikefarah/yq /usr/bin/yq /usr/bin/

Omitting from: will allow copying from the build context:

modules:
- type: copy
  src: file/to/copy.conf
  dest: /usr/etc/app/

Creating an instruction like:

COPY --linked file/to/copy.conf /usr/etc/app/