diff --git a/.github/workflows/build-master.yml b/.github/workflows/build-master.yml index 0301ec5..36d2f69 100644 --- a/.github/workflows/build-master.yml +++ b/.github/workflows/build-master.yml @@ -9,30 +9,30 @@ on: jobs: build: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 strategy: max-parallel: 10 matrix: - TAG_NAME: [ubuntu-22.04, ubuntu-20.04, ubuntu-18.04, rockylinux-8, centos-7, debian-bullseye, debian-buster] + TAG_NAME: [ubuntu-24.04, ubuntu-22.04, ubuntu-20.04, ubuntu-18.04, rockylinux-8, centos-7, debian-bullseye, debian-buster] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 # - name: Install Grype for Vulnerability Scanning of Docker images. # run: | # curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sudo sh -s -- -b /usr/local/bin - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v3 - name: DockerHub auth - uses: docker/login-action@v1 + uses: docker/login-action@v3 with: username: ${{ secrets.USER }} password: ${{ secrets.PASS }} - name: Build docker image tag ${{ matrix.TAG_NAME }} & push to dockerhub - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v5 with: file: ${{matrix.TAG_NAME}}/Dockerfile pull: true diff --git a/.github/workflows/build-pr.yml b/.github/workflows/build-pr.yml index 55943cf..32ddce9 100644 --- a/.github/workflows/build-pr.yml +++ b/.github/workflows/build-pr.yml @@ -7,24 +7,24 @@ on: jobs: build: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 strategy: max-parallel: 10 matrix: - TAG_NAME: [ubuntu-22.04, ubuntu-20.04, ubuntu-18.04, rockylinux-8, centos-7, debian-bullseye, debian-buster] + TAG_NAME: [ubuntu-24.04, ubuntu-22.04, ubuntu-20.04, ubuntu-18.04, rockylinux-8, centos-7, debian-bullseye, debian-buster] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 # - name: Install Grype for Vulnerability Scanning of Docker images. # run: | # curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sudo sh -s -- -b /usr/local/bin - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v3 - name: Build docker image tag ${{ matrix.TAG_NAME }} - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v5 with: file: ${{matrix.TAG_NAME}}/Dockerfile pull: true diff --git a/README.md b/README.md index bfe73b0..95474c1 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,10 @@ Docker images that contains ansible and/or any pre-requistes installed within th ## Supported tags and Dockerfile: +For Ubuntu 24.04 (noble), docker tag and Dockerfile: + +- [ubuntu-24.04](https://github.com/darkwizard242/docker-ansible/blob/master/ubuntu-24.04/Dockerfile) + For Ubuntu 22.04 (jammy), docker tag and Dockerfile: - [ubuntu-22.04](https://github.com/darkwizard242/docker-ansible/blob/master/ubuntu-22.04/Dockerfile) @@ -54,6 +58,12 @@ For Debian 8 (jessie), docker tag and Dockerfile: Simply, pull the docker image using whichever tag you prefer or run it directly. +### Ubuntu 24.04: + +```shell +docker run -it darkwizard242/ansible:ubuntu-22.04 /bin/bash +``` + ### Ubuntu 22.04: ```shell diff --git a/ubuntu-24.04/Dockerfile b/ubuntu-24.04/Dockerfile new file mode 100644 index 0000000..0b567af --- /dev/null +++ b/ubuntu-24.04/Dockerfile @@ -0,0 +1,21 @@ +FROM ubuntu:noble as base +LABEL maintainer="Ali Muhammad" + +ENV DEPENDENCIES "software-properties-common python3 python3-pip python3-pip-whl python3-setuptools python3-software-properties sudo apt-transport-https iputils-ping wget curl gnupg gcc python3-dev xz-utils" + +ENV PIP_PKGS "ansible" + +# Install required dependencies +RUN DEBIAN_FRONTEND=non-interactive apt-get update -y \ + && DEBIAN_FRONTEND=non-interactive apt-get --no-install-recommends -y upgrade \ + && DEBIAN_FRONTEND=non-interactive apt-get install --no-install-recommends -y ${DEPENDENCIES} \ + && python3 -m pip install --no-cache-dir --break-system-packages -U ${PIP_PKGS} \ + && rm -rf /var/lib/apt/lists/* /var/cache/apt/archives/*.deb \ + && for FILE in $(find /var/log -maxdepth 2 -type f); do echo "" > ${FILE}; done \ + && apt-get autoremove \ + && apt-get clean + +FROM base + +# Initialize +CMD ["/bin/bash"]