{"id":15651643,"url":"https://github.com/cicirello/pyaction","last_synced_at":"2025-07-16T04:32:52.311Z","repository":{"id":38190892,"uuid":"295205176","full_name":"cicirello/pyaction","owner":"cicirello","description":"A Docker container with Python, git, and the Github CLI","archived":false,"fork":false,"pushed_at":"2025-07-09T21:14:01.000Z","size":360,"stargazers_count":34,"open_issues_count":1,"forks_count":8,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-10T05:00:35.091Z","etag":null,"topics":["curl","docker","docker-image","gh","git","github-actions","github-api","github-cli","gpg","linux","python"],"latest_commit_sha":null,"homepage":"https://actions.cicirello.org/pyaction/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cicirello.png","metadata":{"funding":{"github":"cicirello","patreon":null,"open_collective":null,"ko_fi":"cicirello","tidelift":null,"community_bridge":null,"liberapay":"cicirello","issuehunt":null,"otechie":null,"custom":null},"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-09-13T17:46:10.000Z","updated_at":"2025-07-09T21:14:00.000Z","dependencies_parsed_at":"2023-10-05T03:44:00.045Z","dependency_job_id":"7f78ac3e-1d12-42ee-b828-9d6eba008f3b","html_url":"https://github.com/cicirello/pyaction","commit_stats":null,"previous_names":[],"tags_count":52,"template":false,"template_full_name":null,"purl":"pkg:github/cicirello/pyaction","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cicirello%2Fpyaction","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cicirello%2Fpyaction/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cicirello%2Fpyaction/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cicirello%2Fpyaction/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cicirello","download_url":"https://codeload.github.com/cicirello/pyaction/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cicirello%2Fpyaction/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265481757,"owners_count":23773948,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["curl","docker","docker-image","gh","git","github-actions","github-api","github-cli","gpg","linux","python"],"created_at":"2024-10-03T12:39:27.996Z","updated_at":"2025-07-16T04:32:52.304Z","avatar_url":"https://github.com/cicirello.png","language":"Python","funding_links":["https://github.com/sponsors/cicirello","https://ko-fi.com/cicirello","https://liberapay.com/cicirello"],"categories":[],"sub_categories":[],"readme":"# pyaction\n\n[![pyaction - A Docker container with Python, git, and the GitHub CLI](https://actions.cicirello.org/images/pyaction640.png)](#pyaction)\n\nWebsite for our GitHub Actions and tools for developing them: https://actions.cicirello.org/\n\n## Summary\n\n| __Docker Hub__ | [![Docker Image Version (latest by date)](https://img.shields.io/docker/v/cicirello/pyaction?label=Docker%20Hub\u0026logo=docker)](https://hub.docker.com/r/cicirello/pyaction) [![Docker Pulls](https://img.shields.io/docker/pulls/cicirello/pyaction?logo=docker)](https://hub.docker.com/r/cicirello/pyaction) |\n| :--- | :--- |\n| __GitHub__ | [![GitHub Container Registry (latest by date)](https://img.shields.io/docker/v/cicirello/pyaction?label=ghcr.io\u0026logo=GitHub)](https://github.com/cicirello/pyaction/pkgs/container/pyaction) |\n| __Image Stats__ | [![Docker Image Size (latest by date)](https://img.shields.io/docker/image-size/cicirello/pyaction?logo=docker)](https://hub.docker.com/r/cicirello/pyaction) |\n| __Build Status__ | [![build](https://github.com/cicirello/pyaction/workflows/build/badge.svg)](https://github.com/cicirello/pyaction/actions/workflows/docker-image.yml) |\n| __License__ | [![License](https://img.shields.io/github/license/cicirello/pyaction)](LICENSE) |\n| __Support__ | [![GitHub Sponsors](https://img.shields.io/badge/sponsor-30363D?logo=GitHub-Sponsors\u0026logoColor=#EA4AAA)](https://github.com/sponsors/cicirello) [![Liberapay](https://img.shields.io/badge/Liberapay-F6C915?logo=liberapay\u0026logoColor=black)](https://liberapay.com/cicirello) [![Ko-Fi](https://img.shields.io/badge/Ko--fi-F16061?logo=ko-fi\u0026logoColor=white)](https://ko-fi.com/cicirello) |\n\nThis Docker image is designed to support implementing Github Actions \nwith Python. It starts with the [official python docker image](https://hub.docker.com/_/python) \nas the base, which is a Debian OS. It specifically uses python:3-slim to keep the image size \ndown for faster loading of Github Actions that use pyaction. On top of the \nbase, we've installed [curl](https://curl.se/), \n[gpg](https://gnupg.org/), [git](https://git-scm.com/), and the \n[GitHub CLI](https://cli.github.com/). We added curl and gpg because they\nare needed to install the GitHub CLI, and they may come in handy anyway \n(especially curl) when implementing a GitHub Action.\n\n__Blog Post on DEV:__ [pyaction: A Docker container with Python, git, and the GitHub CLI](https://dev.to/cicirello/pyaction-a-docker-container-with-python-git-and-the-github-cli-930), posted on December 28, 2022. See a [list of additional blog posts](#blog-posts) later in this README.\n\n## Multiplatform Image\n\npyaction supports the following platforms:\n* linux/386\n* linux/amd64\n* linux/arm64\n* linux/arm/v7\n* linux/arm/v6\n\n## Source Repository and Builds\n\nThe [source repository](https://github.com/cicirello/pyaction) is \nmaintained on GitHub. The images are built on Github and pushed \nto [Docker Hub](https://hub.docker.com/r/cicirello/pyaction), as \nwell as the \n[Github Container Registry](https://github.com/cicirello?ecosystem=container\u0026tab=packages) \nusing Github Actions.\n\nOur daily automated CI/CD processes monitor for updates to the Python slim Docker image, the GitHub \nCLI, etc. Upon detecting such updates, we release an update of pyaction sometimes as \nearly as same day, but possibly a few days later.\n\nSee [versions.json](https://github.com/cicirello/pyaction/blob/master/versions.json) for details of\nversions of Python, GitHub CLI, git, etc included in the latest build.\n\n\n## Docker Tags and Versioning Scheme\n\nFor the current version of Python (e.g., 3.13.5) and current version \nof GitHub CLI (e.g., 2.75.0), all of the following tags are available and equivalent:\n`latest`, `3.13.5`, `3.13`, `3.13.5-gh-2.75.0`, `3.13.5-gh-2.75`, `3.13.5-gh-2`, \n`3.13-gh-2.75.0`, `3.13-gh-2.75`, `3.13-gh-2`.\n\nFor prior versions of Python (3.8, 3.9, 3.10, 3.11, 3.12) and current version of \nGitHub CLI (2.75.0), all of the following tags are available and equivalent: \n`3.12`, `3.12-gh-2.75.0`, `3.12-gh-2.75`, `3.12-gh-2`.\n\nThis tag scheme began with version 2.75.0 of the GitHub CLI. We don't support pyaction\nimages with earlier versions of the GitHub CLI.\n\nThis tag scheme began with Python 3.13.5. Python patch level tags are not available for\npyaction prior to Python 3.13.5.\n\n\n## Installation and Usage\n\nThe pre-built image is hosted on both Docker Hub and the Github \nContainer Registry. You can use it in the following ways.\n\n### Docker Pull Command\n\nPull the latest image from Docker Hub with the following (replace `latest` with \na specific version number if you prefer):\n\n```Shell\ndocker pull cicirello/pyaction:latest\n```\n\nPull from the Github Container Registry with:\n\n```Shell\ndocker pull ghcr.io/cicirello/pyaction:latest\n```\n\n\n### Use as a base image in a Dockerfile\n\nUse as a base image in a Dockerfile (replace `latest` with \na specific version number if you prefer):\n\n```Dockerfile\nFROM cicirello/pyaction:latest\n\n# The rest of your Dockerfile would go here.\n```\n\nOr you can use as a base image (via the Github Container Registry) with:\n\n```Dockerfile\nFROM ghcr.io/cicirello/pyaction:latest\n\n# The rest of your Dockerfile would go here.\n```\n\n## Blog Posts\n\nHere are a few blog posts about the pyaction container listed in reverse chronological order:\n* [pyaction pulled 4 million times and counting from the GitHub Container Registry](https://dev.to/cicirello/pyaction-pulled-4-million-times-and-counting-from-the-github-container-registry-47i3), posted on May 31, 2024.\n* [Celebrating over 2 million pulls of pyaction from the GitHub Container Registry](https://dev.to/cicirello/celebrating-over-2-million-pulls-of-pyaction-from-the-github-container-registry-20hb), posted on September 2, 2023.\n* [pyaction: Over 1 million pulls from the GitHub Container Registry](https://dev.to/cicirello/pyaction-over-1-million-pulls-from-the-github-container-registry-29ag), posted on February 16, 2023.\n* [pyaction: A Docker container with Python, git, and the GitHub CLI](https://dev.to/cicirello/pyaction-a-docker-container-with-python-git-and-the-github-cli-930), posted on December 28, 2022.\n\n## License\n\n### Source Code License\nThe source code, including the Dockerfile and anything\nelse within the [Github repository for pyaction](https://github.com/cicirello/pyaction), \nis licensed under the\n[MIT License](https://github.com/cicirello/pyaction/blob/master/LICENSE).\n\n### Image Licenses\nAs with all pre-built Docker images, the image itself (once built, or obtained from\nDocker Hub or the Github Container Registry) contains software that is covered by a\nvariety of licenses. See the license information for the \n[python docker image](https://hub.docker.com/_/python),\nthe [license for git](https://git-scm.com/), \nthe [GitHub CLI](https://github.com/cli/cli/blob/trunk/LICENSE),\nand the [license for Python](https://docs.python.org/3/license.html).  \n\nIf you build and distribute an image containing your software, \nusing pyaction as the base image, it\nis your responsibility to follow the licenses of all of the\nsoftware contained within the image.  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcicirello%2Fpyaction","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcicirello%2Fpyaction","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcicirello%2Fpyaction/lists"}