Povilas Kanapickas
a3fb4b373a
Merge pull request #1058 from banditopazzo/705-ssh-key-support-in-build
...
feat: add support for ssh property in the build command
2024-10-15 03:18:41 +03:00
banditopazzo
ab33954f6c
add ssh support for build command
...
Fixes #705 : Add support for ssh property in the build command
Signed-off-by: Domenico Salvatore <banditopazzo@gmail.com>
2024-10-15 00:35:10 +02:00
Timon de Groot
90f54b9ca5
Add x-podman.no_hosts extension
...
Signed-off-by: Timon de Groot <timon.degroot@hypernode.com>
2024-10-14 17:02:36 +02:00
Chris Shucksmith
4a7329b9e3
Revert "Use defined environment variables in the image build process"
...
This reverts commit 901adf47d0
.
fixes #985 and #931
Signed-off-by: Chris Shucksmith <chris@shucksmith.co.uk>
2024-09-06 23:12:09 +03:00
legobt
ea239c4b77
Simplify secrets assignment
...
Signed-off-by: legobt <6wbvkn0j@anonaddy.me>
2024-08-03 01:01:16 +00:00
legobt
9fdee76858
Initialize default values in PodmanCompose constructor
...
Signed-off-by: legobt <6wbvkn0j@anonaddy.me>
2024-08-03 01:01:08 +00:00
legobt
0a6e0a35e1
Fix services replicas type
...
Signed-off-by: legobt <6wbvkn0j@anonaddy.me>
2024-08-03 01:00:40 +00:00
legobt
26e6651d6c
Type hints via annotations
...
Signed-off-by: legobt <6wbvkn0j@anonaddy.me>
2024-08-03 01:00:36 +00:00
legobt
462603383c
Remove is_dict,is_str for better pyright inference
...
When support for python3.8 and python3.9 has been dropped, it will be possible to eat the cak and
have it due to PEP-647.
Signed-off-by: legobt <6wbvkn0j@anonaddy.me>
2024-08-03 01:00:30 +00:00
legobt
ed58ac0879
clean up redundant default_net variable
...
Signed-off-by: legobt <6wbvkn0j@anonaddy.me>
2024-08-01 23:16:13 +00:00
legobt
305f25b4d6
clean up redundant proj_name
...
- remove unutilized proj_name parameter from volume_ls
Signed-off-by: legobt <6wbvkn0j@anonaddy.me>
proj_name
2024-08-01 23:16:13 +00:00
Povilas Kanapickas
585d344d0a
Merge pull request #1004 from lisongmin/substitution-with-service-environment
...
Substitution with service environment
2024-07-27 00:06:46 +03:00
Songmin Li
b5eaf314ad
Support variable substitution with service's environment
...
This commit introduces the ability to substitute environment variables
within the 'environment' section of the service definition.
This allows for more dynamic configuration of services.
Signed-off-by: Songmin Li <lisongmin@protonmail.com>
2024-07-27 00:04:06 +03:00
Beat Küng
b3c49df6eb
podman_compose.py: support "platform" property in the build command
...
This was already added to container_to_args() in https://github.com/containers/podman-compose/pull/470
which is used for the 'up' and 'run' commands.
Definition in the schema: https://github.com/compose-spec/compose-spec/blob/main/schema/compose-spec.json#L329
Signed-off-by: Beat Küng <beat-kueng@gmx.net>
2024-07-26 23:58:11 +03:00
Jason Chua
7d7e64fe5a
Update docs+messages to reflect uidmaps/gidmaps code
...
Signed-off-by: Jason Chua <jasonc1804@gmail.com>
2024-07-22 20:54:41 -07:00
bg
e2eb883709
Add --network=none
if network_mode: none
is set; fixes #1001 .
...
Signed-off-by: bg <bg@nerilex.org>
2024-07-17 01:41:04 +03:00
Mingzhe Zou
85050097e5
Support python direct call _parse_args or run
...
For example:
```
>>> from podman_compose import podman_compose
>>> podman_compose._parse_args(['version'])
>>> podman_compose.run(['help'])
```
Signed-off-by: Mingzhe Zou <zoumingzhe@qq.com>
2024-07-15 12:04:39 +08:00
Sebastian Wick
ca58d7cd58
Pass build description labels to podman build
...
The Compose Specification supports adding labels to the build image
which is also used in practice. Support this and pass the labels to
`podman build`.
Signed-off-by: Sebastian Wick <sebastian.wick@redhat.com>
2024-07-08 19:15:16 +03:00
Povilas Kanapickas
f0bae1e2d9
Don't resolve links to compose file
...
docker-compose uses the path to the compose file even if it's symlink to
get the context directory.
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-03-25 08:18:52 +02:00
Povilas Kanapickas
5bf4c0fdbe
Add a way to remove dashes in default network names
...
This is the behavior exhibited by docker compose. The network names are
user-visible through external networks, so previously anyone who
migrated from docker-compose needed to change their configuration. Now
it is possible to select compatibility via a flag in x-podman global
dictionary.
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-07-06 18:50:25 +03:00
Povilas Kanapickas
67c5352c3a
Extract default_network_name_for_project()
...
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-07-06 18:32:09 +03:00
Povilas Kanapickas
24038dace3
Check whether pod exists before trying to create one
...
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-07-03 19:31:13 +03:00
Michaël Nass - PlugN
fa3e0a7772
Alt Dockerfile names fix
...
Signed-off-by: Michaël Nass - PlugN <michael.nass@free.fr>
2024-06-26 19:09:20 +02:00
Povilas Kanapickas
d38b26bb01
Release 1.2.0
...
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-06-26 10:43:28 +03:00
Genzer
4e9f76768c
Load .env from Compose file's directory and cwd
...
This commit loads dotenv `.env` (exactly that name) from the following location (the later takes
precedence):
- The `.env` file in the Compose file's directory.
- The `.env` file in the current working directory (invoking podman-compose).
This preserves the behavior prior to 1.1.0 and to match with Docker Compose CLI.
Fix: https://github.com/containers/podman-compose/issues/937
Signed-off-by: Genzer <732937+Genzer@users.noreply.github.com>
2024-06-24 23:29:56 +03:00
Monika Kairaityte
405001b990
Fix comment
...
Signed-off-by: Monika Kairaityte <monika@kibit.lt>
2024-06-24 21:24:34 +03:00
Brett Calliss
546cad5171
Add type=env secret support
...
Signed-off-by: Brett Calliss <brett@obligatory.email>
2024-06-24 20:12:44 +03:00
nathanael.noblet
935029dc33
Fix environment variable precedents
...
Per https://docs.docker.com/compose/environment-variables/envvars-precedence/#advanced-example
Signed-off-by: nathanael.noblet <nathanael.noblet@willowglensystems.com>
2024-06-22 19:58:02 +03:00
Povilas Kanapickas
80b2aa6ed0
Merge pull request #964 from mokibit/set-custom-in_pod-in-compose-file
...
Allow providing custom in_pod argument as a global compose file variable
2024-06-20 09:45:41 +03:00
Monika Kairaityte
360b85bf2d
Allow providing custom in_pod argument as a global compose file variable
...
Default command line argument `in_pod` was set to True, but this breaks
the compose file for users who want to use `--userns` argument. This
commit sets default `in_pod` value to None, and later resolves whether
to create a pod by checking compose file, as new argument in compose
file x-podman is now available. Now it is convenient for users to pass
custom `in_pod` value (True or False) as a compose file argument when
command line value of `in_pod` is not provided.
Signed-off-by: Monika Kairaityte <monika@kibit.lt>
2024-06-20 09:42:22 +03:00
Artho Pacini
82740cc311
Add ability to input docker-compose.yaml via stdin
...
Signed-off-by: Artho Pacini <eu@arthopacini.com>
2024-06-18 00:05:31 +03:00
Artho Pacini
0f645e4c70
Add ability to input docker-compose.yaml via stdin
...
Signed-off-by: Artho Pacini <eu@arthopacini.com>
2024-06-18 00:05:31 +03:00
Artho Pacini
3b15170ccf
Changed the global parser help message for file input, to reflect changes for reading from stdin
...
Signed-off-by: Artho Pacini <eu@arthopacini.com>
2024-06-18 00:05:31 +03:00
Artho Pacini
3359380ec6
Add ability to input docker-compose.yaml via stdin
...
Signed-off-by: Artho Pacini <eu@arthopacini.com>
2024-06-18 00:05:31 +03:00
Monika Kairaityte
e799a0b0ea
Fix x-podman.gidmap typo
...
Signed-off-by: Monika Kairaityte <monika@kibit.lt>
2024-06-14 17:31:55 +03:00
Hedayat Vatankhah
f3e9a96c96
Fixes #908 : Add support for multi-line environment files
...
Signed-off-by: Hedayat Vatankhah <hedayat.fwd@gmail.com>
2024-05-28 23:43:15 +03:00
Otto Liljalaakso
cac836b0f5
Support additional_contexts
...
Signed-off-by: Otto Liljalaakso <otto.liljalaakso@novatron.fi>
2024-05-21 19:44:37 +03:00
Muayyad Alsadi
5d4de80ab7
Merge pull request #911 from charliemirabile/selinux
...
Add support for selinux in verbose bind mount specification
2024-05-19 11:13:45 +03:00
Muayyad Alsadi
23ad5c3ef7
Merge pull request #920 from mokeyish/gpu
...
Add supoort for enabling GPU access
2024-05-19 11:12:34 +03:00
Zhen Liu
1d64f2cf8c
Update podman_compose.py
...
fix #940
Signed-off-by: Zhen Liu <lzhen.dev@outlook.com>
2024-05-18 20:33:10 +08:00
Hedayat Vatankhah
4e22faefd6
Fix logging build error message
...
Signed-off-by: Hedayat Vatankhah <hedayat.fwd@gmail.com>
2024-05-13 15:13:40 +03:00
Muayyad Alsadi
7a2da76ab8
Merge pull request #724 from hedayat/fix-merge-depends-on
...
Fixes #723 : merge short & long syntax of depends_on dependencies
2024-05-08 17:57:44 +03:00
YISH
79865c2e13
Add support for enabling GPU access
...
Signed-off-by: YISH <mokeyish@hotmail.com>
2024-05-07 10:32:24 +08:00
fccagou
c23a8b2cbd
Do not pass --ipam-driver option when value set to default
...
fixes #852 .
Signed-off-by: fccagou <me@fccagou.fr>
2024-05-06 17:00:17 +03:00
Alexandre Germain
b202a09501
Add support for env_file
as objects
...
Fixes: https://github.com/containers/podman-compose/issues/897
Signed-off-by: Alexandre Germain <nihilivin@gmail.com>
2024-05-06 14:13:37 +03:00
Johannes
5c4aa40032
add await for create_pods call
...
fixes log output podman_compose.py:2527: RuntimeWarning: coroutine 'create_pods' was never awaited
Signed-off-by: Johannes Kasberger <schugabe@gmx.at>
2024-05-06 11:02:45 +02:00
Winston
d31a8b124d
Don't create pods/container when registering systemd unit
...
Signed-off-by: Winston <44872771+winston-yallow@users.noreply.github.com>
2024-05-01 20:03:14 +02:00
Povilas Kanapickas
70a0e2d003
Fix handling of --in-pod argument
...
Currently --in-pod handling is broken because the only way to set False
is by providing empty argument like "--in-pod=". As of Python 3.7 the
solution is to accept string and parse manually.
Co-authored-by: Randolph Sapp <res.sapp@gmail.com>
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-04-28 21:16:34 +03:00
Mohammed Tayeh
eea8bac496
Add images command
...
Signed-off-by: Mohammed Tayeh <m.tayeh94@gmail.com>
2024-04-28 19:04:23 +03:00
Povilas Kanapickas
9599cc039e
Migrate x-podman dictionary to x-podman.* fields in container root
...
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-04-28 18:24:37 +03:00
GnSight
77f2e8e5b0
Support podman's external rootfs management
...
Signed-off-by: GnSight <ftyg@live.com>
2024-04-28 17:55:39 +03:00
Denis Ledoux
72a94d5185
implement --publish in docker-compose run
...
Signed-off-by: Denis Ledoux <dle@odoo.com>
2024-04-28 00:54:35 +02:00
Povilas Kanapickas
2681566580
Release 1.1.0
2024-04-19 12:37:30 +03:00
Povilas Kanapickas
131010bc9d
Use x- prefix for x-podman.mac_address
...
Docker compose documents x- prefix as standard vendor prefix.
https://github.com/compose-spec/compose-spec/pull/18
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-04-17 20:16:03 +03:00
Cam Spiers
cdcedeb6b2
Use "service.build.ulimits" when present instead of "service.ulimits"
...
Signed-off-by: Cam Spiers <camspiers@gmail.com>
2024-04-17 19:45:34 +03:00
charliemirabile
d7cf0966d3
add support for selinux in verbose mount
...
This corresponds to specifying the `z` or `Z` option in the third
portion of a terse mount specification (i.e. src:trg:z)
Signed-off-by: charliemirabile <46761267+charliemirabile@users.noreply.github.com>
2024-04-10 15:29:03 -04:00
Povilas Kanapickas
e893d06313
Merge pull request #867 from baszoetekouw/fix-networks
...
Fix multiple networks with separately specified ip and mac
2024-04-08 23:21:38 +03:00
Hedayat Vatankhah
1f35c00694
Add unit test for depends_on normalization as a dict
...
Signed-off-by: Hedayat Vatankhah <hedayat.fwd@gmail.com>
2024-04-08 23:31:41 +03:30
AndrweCottrell
6c09ce710e
FIX issue https://github.com/containers/podman-compose/issues/704 - Windows fix sock not working.
2024-04-07 16:28:45 +10:00
Bas Zoetekouw
953534a71a
Support and document all podman-specific network_modes
...
Signed-off-by: Bas Zoetekouw <bas.zoetekouw@surf.nl>
2024-03-28 16:09:43 +02:00
Bas Zoetekouw
6feff244db
slirp4netns can be used without options
...
Signed-off-by: Bas Zoetekouw <bas.zoetekouw@surf.nl>
2024-03-28 16:09:43 +02:00
Bas Zoetekouw
65849c95e2
add comment about per-network aliases
...
Signed-off-by: Bas Zoetekouw <bas.zoetekouw@surf.nl>
2024-03-28 16:09:43 +02:00
Bas Zoetekouw
9baea704d7
use preferred format of podman command line options
...
Specifically:
- use "--network=foo" instead of "--network foo"
- specify "--network-alias" multiple times instead of concatenating values
Signed-off-by: Bas Zoetekouw <bas.zoetekouw@surf.nl>
2024-03-28 16:09:43 +02:00
Bas Zoetekouw
bdff78dcba
Ignore files generated by tests
...
Signed-off-by: Bas Zoetekouw <bas.zoetekouw@surf.nl>
2024-03-28 16:09:43 +02:00
Bas Zoetekouw
45ca1f994f
Support podman-specific per-network mac_address specifiation
...
Signed-off-by: Bas Zoetekouw <bas.zoetekouw@surf.nl>
2024-03-28 16:09:43 +02:00
Bas Zoetekouw
2743d690d2
Fix support for multiple networks with explicitly specified ipv4/ipv6 addresses
...
Signed-off-by: Bas Zoetekouw <bas.zoetekouw@surf.nl>
2024-03-28 16:09:43 +02:00
wiehe
1e9cf1dff0
Pass file secrets to "podman build" via parameter "--secret"
...
to make them available for "RUN --mount=type=secret" statements inside the
Dockerfile.
Keep using --volume to pass file secrets to "podman run".
Signed-off-by: wiehe <28457227+wiehe@users.noreply.github.com>
2024-03-12 17:23:40 +01:00
Povilas Kanapickas
f18c8092cc
Merge pull request #887 from baszoetekouw/fix-oldpython
...
Fix support for older python versions
2024-03-09 23:29:32 +02:00
Povilas Kanapickas
43059dc16f
Merge pull request #783 from ChuJiani/devel
...
Fix #782 : add support for `http-proxy` option of podman
2024-03-09 23:27:22 +02:00
Bas Zoetekouw
fde7995cb8
Fix python < 3.11 compatibility
...
Signed-off-by: Bas Zoetekouw <bas.zoetekouw@surf.nl>
2024-03-09 22:26:36 +01:00
Bas Zoetekouw
688ee9a104
Fix pylint issues
...
Signed-off-by: Bas Zoetekouw <bas.zoetekouw@surf.nl>
2024-03-09 22:26:35 +01:00
Ari Pollak
f2f5483a74
Extract compose_run args parsing and add unit tests
...
Signed-off-by: Ari Pollak <ajp@aripollak.com>
2024-03-09 16:18:13 -05:00
Ari Pollak
c4fa8f7a16
Split exec args parsing into new function and add unit tests for it
...
Signed-off-by: Ari Pollak <ajp@aripollak.com>
2024-03-09 16:02:47 -05:00
Ari Pollak
4c270b9116
Allow run/exec -e with equals sign in value
...
Fixes : #798
Signed-off-by: Ari Pollak <ajp@aripollak.com>
2024-03-09 14:35:08 -05:00
ChuJiani
c98cbaaaf0
Fix #782 : add support for http_proxy
...
Signed-off-by: ChuJiani <archet@chujiani.top>
2024-03-09 17:10:09 +00:00
Evgeniy Timokhov
91d316ff1f
Added handling pid
option
...
Fixes #554
Signed-off-by: Evgeniy Timokhov <timocov@gmail.com>
2024-03-09 16:10:37 +00:00
Maximilian R
969edb88d0
Add support for enable_ipv6
...
Signed-off-by: Maximilian R <maxi.rostock@outlook.de>
2024-03-09 13:01:41 +02:00
Maximilian R
bba1f33d51
Factor out arg creation for "network create". Add unit tests.
...
Signed-off-by: Maximilian R <public@complexvector.space>
2024-03-09 13:00:09 +02:00
lemmi
a9c335bf82
Handle sysctls maps
...
- Add support to handle sysctls maps.
- Directly raise an error if sysctls is neither an array nor map instead
of letting podman fail with an unhelpful message.
Support for sysctls arrays was added in #261 .
Fixes #754 : sysctls only works with arrays, not maps
Signed-off-by: lemmi <lemmi@nerd2nerd.org>
2024-03-09 12:44:55 +02:00
Tanel Liiv
2cdfb3e6d4
Fix stop/restart args stacking
...
Signed-off-by: Tanel Liiv <tanel.liiv@reconeyez.com>
Signed-off-by: Tanel Liiv <liivtanel@gmail.com>
2024-03-09 12:39:53 +02:00
Florian Maurer
da520e299b
switch to % string lazy formatting
...
* fix black and pylint issues
Signed-off-by: Florian Maurer <f.maurer@outlook.de>
2024-03-09 10:40:24 +01:00
James O'Beirne
1e9e2ee776
Output: use logging, remove garbage output by default
...
Fixes #489 .
Introduces a --verbose flag if you want to see all the noise that
was previously printed by default.
Signed-off-by: James O'Beirne <james.obeirne@pm.me>
Signed-off-by: Florian Maurer <f.maurer@outlook.de>
2024-03-09 10:36:20 +01:00
Brett Calliss
0f693ee584
Replaces asyncio timeout with bespoke timeout function
...
Signed-off-by: Brett Calliss <brett@obligatory.email>
2024-03-09 19:02:32 +11:00
Povilas Kanapickas
a8db898ac6
Merge pull request #883 from p12tic/lint-fixes
...
Enable ruff check and fix lint errors
2024-03-08 23:51:25 +02:00
Povilas Kanapickas
15ae2140d4
Add support for runtime service configuration key
...
https://docs.docker.com/compose/compose-file/05-services/#runtime
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-03-08 23:48:55 +02:00
Povilas Kanapickas
4e43606df3
Shorten too long lines
...
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-03-08 23:46:24 +02:00
Povilas Kanapickas
91052cb2d9
Fix ambiguous variable name
...
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-03-08 23:46:23 +02:00
Povilas Kanapickas
a6e0092627
Remove unused variable
...
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-03-08 23:46:22 +02:00
Povilas Kanapickas
59a1fa3942
Use 'not in' for membership test
...
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-03-08 23:46:21 +02:00
Povilas Kanapickas
36139fb282
Remove unused f-string
...
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-03-08 23:46:20 +02:00
Povilas Kanapickas
b0da6f82d3
Fix import formatting
...
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-03-08 23:46:19 +02:00
Povilas Kanapickas
b34f699adb
Add SPDX license identifiers to each source file
...
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-03-08 12:19:51 +02:00
Povilas Kanapickas
a967cab02b
Format codebase with ruff
...
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-03-07 18:28:06 +02:00
Muayyad Alsadi
831caa6276
remove recursion
2024-02-06 00:23:14 +03:00
Ben Plessinger
9ac33392a0
Fix issue #831
...
Signed-off-by: Ben Plessinger <Benjamin.Plessinger@roswellpark.org>
2024-02-06 00:20:11 +03:00
Falmarri
c6a1c4c432
Add tests to make sure all async paths are covered
...
Not at 100% yet. But upped code coverage significantly and covered major
async calls.
Signed-off-by: Falmarri <463948+Falmarri@users.noreply.github.com>
2024-02-04 10:11:57 +03:00
Falmarri
3c9628b462
Fix a couple issues and update docs
...
Signed-off-by: Falmarri <463948+Falmarri@users.noreply.github.com>
2024-02-04 10:11:57 +03:00
Falmarri
38b13a34ea
Use asyncio for subprocess calls
...
Removes the threads from compose_up and manages it using async. Also
uses async processing to format the log messages instead of piping
through sed. This should work on windows without having sed installed
Adds --parallel to support pull and build in parallel, same as docker
compose
Signed-off-by: Falmarri <463948+Falmarri@users.noreply.github.com>
2024-02-04 10:11:57 +03:00
ambiamber
bce40c2db3
Change "an key-value" to "a key-value"
2023-08-08 18:05:58 +03:00
Kian-Meng Ang
78f8cad7c4
Fix typos
...
Found via `codespell -L poped`
2023-08-08 18:05:25 +03:00