changeset 698: | 96958d3eb5b0 |
parent: | 7a7e6c273f52 |
author: | Richard Westhaver <ellis@rwest.io> |
date: | Fri, 04 Oct 2024 22:04:59 -0400 |
permissions: | -rw-r--r-- |
description: | fixes |
142
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
1 | ;;; lib/pod/pkg.lisp --- Pod package defs |
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
2 | |
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
3 | ;; Pod is a Lisp system for interacting with container runtimes -- |
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
4 | ;; i.e. Podman/Libpod. |
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
5 | |
388
dec30b6fd500
prelude/user packages init
Richard Westhaver <ellis@rwest.io>
parents:
166
diff
changeset
|
6 | ;;; Commentary: |
dec30b6fd500
prelude/user packages init
Richard Westhaver <ellis@rwest.io>
parents:
166
diff
changeset
|
7 | |
142
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
8 | ;; Podman supports a RESTful API which is described here: |
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
9 | ;; https://docs.podman.io/en/latest/_static/api.html |
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
10 | |
388
dec30b6fd500
prelude/user packages init
Richard Westhaver <ellis@rwest.io>
parents:
166
diff
changeset
|
11 | ;; The API is the best way to interact with containers in almost all cases but |
dec30b6fd500
prelude/user packages init
Richard Westhaver <ellis@rwest.io>
parents:
166
diff
changeset
|
12 | ;; there are a few utilities for initializing the podman server or spawning |
dec30b6fd500
prelude/user packages init
Richard Westhaver <ellis@rwest.io>
parents:
166
diff
changeset
|
13 | ;; one in a user process when supported. |
dec30b6fd500
prelude/user packages init
Richard Westhaver <ellis@rwest.io>
parents:
166
diff
changeset
|
14 | |
dec30b6fd500
prelude/user packages init
Richard Westhaver <ellis@rwest.io>
parents:
166
diff
changeset
|
15 | ;; Once the podman API is up and running the functions in this library can be |
dec30b6fd500
prelude/user packages init
Richard Westhaver <ellis@rwest.io>
parents:
166
diff
changeset
|
16 | ;; used to make requests such as starting a container or building an image. |
dec30b6fd500
prelude/user packages init
Richard Westhaver <ellis@rwest.io>
parents:
166
diff
changeset
|
17 | |
dec30b6fd500
prelude/user packages init
Richard Westhaver <ellis@rwest.io>
parents:
166
diff
changeset
|
18 | ;; We also provide support for composing and parsing Containerfiles from Lisp |
dec30b6fd500
prelude/user packages init
Richard Westhaver <ellis@rwest.io>
parents:
166
diff
changeset
|
19 | ;; for easy integration into applications. |
142
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
20 | |
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
21 | ;;; Code: |
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
22 | (defpackage :pod |
143 | 23 | (:use :cl :std :cli :sb-bsd-sockets :net :dat/json) |
142
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
24 | (:export |
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
25 | :*podman-api-version* :*podman-exe* :*buildah-exe* |
161 | 26 | :*podman-local-user-socket* |
27 | :pod-error :podman-error :libpod-error |
|
142
f85a2fac1ed7
switched to dexador, initialized pod api package
ellis <ellis@rwest.io>
parents:
diff
changeset
|
28 | :decode-podman-response :encode-podman-request |
143 | 29 | :podman-request :podman-response |
161 | 30 | :libpod-request :libpod-request-json |
441
9fa3b9154bb2
add pod/containerfile, rm pod/buildah, some work on zstd
Richard Westhaver <ellis@rwest.io>
parents:
388
diff
changeset
|
31 | :start-podman-service :libpod-client |
9fa3b9154bb2
add pod/containerfile, rm pod/buildah, some work on zstd
Richard Westhaver <ellis@rwest.io>
parents:
388
diff
changeset
|
32 | :containerfile :*containerfile-predefined-args* |
469
7354623e5b54
define-alien-enum, zstd, skel, and pod work
Richard Westhaver <ellis@rwest.io>
parents:
441
diff
changeset
|
33 | :containerfile-args :containerfile-path :containerfile-steps :containerfile-base |
490 | 34 | :with-libpod-client :*default-containerfile*)) |