Skip to content

Commit 7dfa1e1

Browse files
committed
docs: ci: Simplify versioning, add entrypoint
The painpoint of the runner name now resolves internally, and the entrypoint defaults to bash (most users usage), then append to the systemd run command. Signed-off-by: Jorge Marques <jorge.marques@analog.com>
1 parent ee7c727 commit 7dfa1e1

File tree

1 file changed

+18
-13
lines changed

1 file changed

+18
-13
lines changed

docs/ci.rst

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ To build the container image, use your favorite container engine from the
303303
* ci
304304
main
305305
$alias container=podman # or docker, ...
306-
$container build --tag adi/linux:v4 container
306+
$container build --tag adi/linux:latest container
307307

308308
You may want to build the container in a host, where you have all your tools installed,
309309
and then deploy to a server.
@@ -315,7 +315,7 @@ In this case, export the image and then import on the server:
315315
:group: host
316316

317317
~/linux
318-
$container save -o adi-linux.tar adi/linux:v4
318+
$container save -o adi-linux.tar adi/linux:latest
319319
$scp adi-linux.tar server:/tmp/
320320

321321
.. shell::
@@ -334,7 +334,7 @@ Or if you are feeling adventurous:
334334
:group: host
335335

336336
~/linux
337-
$container save adi/linux:v4 | ssh server "cat - | podman load"
337+
$container save adi/linux:latest | ssh server "cat - | podman load"
338338

339339
.. _interactive-run:
340340

@@ -351,7 +351,7 @@ You can use it to compile/runs checks using persistent cache, for example:
351351
.. shell::
352352

353353
~/linux
354-
$cr adi/linux:v4
354+
$cr adi/linux:latest
355355
$set_arch gcc_aarch64
356356
ARCH=arm64
357357
CXX=gcc-14
@@ -379,7 +379,7 @@ Or:
379379
.. shell::
380380

381381
~/linux
382-
$cr adi/linux:v4
382+
$cr adi/linux:latest
383383
$base_sha=@~2
384384
$check_checkpatch
385385
checkpatch on range @~6..@
@@ -398,7 +398,7 @@ Remember to replace ``container_engine`` variable with your preferred container
398398
.. shell::
399399

400400
~/linux
401-
$cr adi/linux:v4
401+
$cr adi/linux
402402
Remote 'public' matches 'analogdevicesinc', and has branch 'ci'.
403403
Fetch (y/n)? y
404404
Fetching branch 'ci'...
@@ -487,7 +487,7 @@ is ignored and a new one is requested.
487487
$ --secret public_linux_org_repository,type=env,target=org_repository \
488488
$ --secret public_linux_runner_token,type=env,target=runner_token \
489489
$ --env runner_labels=v1,big_cpu \
490-
$ adi/linux:v4
490+
$ adi/linux
491491

492492
.. collapsible:: Docker alternative
493493

@@ -502,7 +502,7 @@ is ignored and a new one is requested.
502502
$ --env public_linux_org_repository=$(gpg --quiet --batch --decrypt /run/secrets/public_linux_org_repository.gpg) \
503503
$ --env public_linux_runner_token=$(gpg --quiet --batch --decrypt /run/secrets/public_linux_runner_token.gpg) \
504504
$ --env runner_labels=v1,big_cpu \
505-
$ localhost/adi/linux:v4
505+
$ localhost/adi/linux
506506

507507
The environment variable runner_labels (comma-separated), set the runner labels.
508508
If not provided on the Containerfile as ``ENV runner_labels=<labels,>`` or as argument
@@ -541,12 +541,10 @@ Below is a suggested systemd service at *~/.config/systemd/user/container-public
541541
--secret public_linux_org_repository,type=env,target=org_repository \
542542
--secret public_linux_runner_token,type=env,target=runner_token \
543543
--conmon-pidfile %t/%n-pid --cidfile %t/%n-cid \
544+
--entrypoint="/usr/local/bin/entrypoint.sh" \
544545
--label "io.containers.autoupdate=local" \
545546
--name=public_linux_%i \
546-
--memory-swap=20g \
547-
--memory=16g \
548-
--cpus=4 \
549-
-d adi/linux:v4 top
547+
-d adi/linux:latest top
550548
ExecStop=/bin/sh -c "/bin/podman stop -t 300 $(cat %t/%n-cid) && /bin/podman rm $(cat %t/%n-cid)"
551549
ExecStopPost=/bin/rm %t/%n-pid %t/%n-cid
552550
TimeoutStopSec=600
@@ -556,6 +554,12 @@ Below is a suggested systemd service at *~/.config/systemd/user/container-public
556554
[Install]
557555
WantedBy=multi-user.target
558556
557+
Other tuning options include:
558+
559+
* `--memory-swap=20g`: Limit SWAP usage.
560+
* `--memory=16g`: Limit RAM usage.
561+
* `--cpus=4`: Limit number of CPUs.
562+
559563
.. collapsible:: Docker alternative
560564

561565
.. code:: systemd
@@ -573,13 +577,14 @@ Below is a suggested systemd service at *~/.config/systemd/user/container-public
573577
--env org_repository=$(gpg --quiet --batch --decrypt /run/secrets/public_linux_org_repository.gpg) \
574578
--env runner_token=$(gpg --quiet --batch --decrypt /run/secrets/public_linux_runner_token.gpg) \
575579
--cidfile %t/%n-cid \
580+
--entrypoint="/usr/local/bin/entrypoint.sh" \
576581
--label "io.containers.autoupdate=local" \
577582
--name=public_linux_%i \
578583
--memory-swap=20g \
579584
--memory=16g \
580585
--cpus=4 \
581586
--log-driver=journald \
582-
-d localhost/adi/linux:v4 top"
587+
-d localhost/adi/linux:latest top"
583588
RemainAfterExit=yes
584589
ExecStop=/bin/sh -c "/bin/docker stop -t 300 $(cat %t/%n-cid) && /bin/docker rm $(cat %t/%n-cid)"
585590
ExecStopPost=/bin/rm %t/%n-cid

0 commit comments

Comments
 (0)