https://github.com/volker-raschek/civ
[MIRROR]: Program to verify container images (civ)
https://github.com/volker-raschek/civ
civ container golang networking
Last synced: 2 months ago
JSON representation
[MIRROR]: Program to verify container images (civ)
- Host: GitHub
- URL: https://github.com/volker-raschek/civ
- Owner: volker-raschek
- License: other
- Created: 2024-12-20T09:11:35.000Z (5 months ago)
- Default Branch: master
- Last Pushed: 2025-03-22T15:38:02.000Z (2 months ago)
- Last Synced: 2025-03-22T16:23:23.625Z (2 months ago)
- Topics: civ, container, golang, networking
- Language: Go
- Homepage: https://hub.docker.com/r/volkerraschek/civ
- Size: 52.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
# civ - container image verifier
The container image verifier - `civ` checks based on constraints container
images. For this purpose is a config file required which contains the constraint
definitions. The config file must be passed as argument to `civ`. `civ` writes
the results into a separate file.Currently is `json` and `yaml` supported. As default will be `yaml` used.
Optionally can be specified via the second arg the result file.`civ config.yaml [ result.yaml ]`
## Constraints
### Labels
#### Exists
Verify if container image `volkerraschek/civ:latest` has label
`org.opencontainers.image.documentation` defined.```yaml
images:
volkerraschek/civ:latest:
labelConstraints:
org.opencontainers.image.documentation:
exists: true
```#### Compare Semantic Versioning
Verify, if the container image `volkerraschek/civ:latest` has label
`org.opencontainers.image.version` defined and has a greater version than
`2.5.7`.```yaml
images:
volkerraschek/civ:latest:
labelConstraints:
org.opencontainers.image.version:
compareSemver:
greaterThan: 2.5.7
```Alternatively, can `lessThan` and `equal` be used. For example to define a range
of `2.5.7~2.8.4` with `lessThan` and `greaterThan`.```yaml
images:
volkerraschek/civ:latest:
labelConstraints:
org.opencontainers.image.version:
compareSemver:
greaterThan: 2.5.7
lessThan: 2.8.4
```#### Compare String
Verify, if the container image `volkerraschek/civ:latest` has label
`org.opencontainers.image.documentation` defined and the value starts with
`https://` and ends with `README.md`.```yaml
images:
volkerraschek/civ:latest:
labelConstraints:
org.opencontainers.image.documentation:
compareString:
hasPrefix: "https://"
hasSuffix: "README.md"
```Alternatively, can be `equal` used to compare the value of a label with a
expected value.#### Count labels with corresponding prefix, suffix or match pattern
No more than 3 labels with the prefix `org.opencontainers` and exactly one
labels with the suffix `version` may be defined for the image
`volkerraschek/civ:latest`.```yaml
images:
volkerraschek/civ:latest:
labelConstraints:
org.opencontainers%:
count:
lowerThan: 4
%version:
count:
equal: 1
```The functions `lessThan` and `equal` are also available as constraints.