GitHub Action to use 'buildah' to build a container image.
Find a file
Luca Stocchi 1b1386b77e
add support for building images with docker files (#4)
Signed-off-by: Luca Stocchi <lstocchi@redhat.com>
2020-11-17 15:54:29 +01:00
dist add support for building images with docker files (#4) 2020-11-17 15:54:29 +01:00
src add support for building images with docker files (#4) 2020-11-17 15:54:29 +01:00
.gitignore add language recognizer 2020-11-13 12:38:29 +01:00
action.yml add support for building images with docker files (#4) 2020-11-17 15:54:29 +01:00
language-image.json add language recognizer 2020-11-13 12:38:29 +01:00
LICENSE add missing files for the action 2020-11-06 22:48:47 +01:00
package.json readme + cleaning 2020-11-13 15:20:53 +01:00
README.md Remove out/, add badges 2020-11-16 23:29:58 -05:00
tsconfig.json add support for building images with docker files (#4) 2020-11-17 15:54:29 +01:00

buildah-action

tag badge license badge size badge

Buildah is a GitHub Action for building OCI-compatible (Docker- and Kubernetes-compatible) images quickly and easily.

Buildah action works only on Linux distributions, and it is not supported on Windows or Mac platforms at this time.

Note that GitHub's Ubuntu Environments (ubuntu-20.04 and ubuntu-18.04) come with buildah 1.17.0 installed. So, if you are not using those Ubuntu environments you need to make sure to install buildah tool in an early step.

Action Inputs

Action input Description
new-image-name (Required) Name to give to the image that will be eventually created.
base-name (Optional) The base image to use to create the initial container. If not specified, the action will try to pick one automatically. Only Java language is supported at this time.
content (Required) The content to copy inside the container to create the final image. This is a multiline input to allow you to copy more than one file/directory. For example -
content: |
target/spring-petclinic-2.3.0.BUILD-SNAPSHOT.jar
entrypoint (Required) The entry point to set for the container. This is a multiline input to add multiple values. For example -
entrypoint: |
java
-jar
spring-petclinic-2.3.0.BUILD-SNAPSHOT.jar
port (Required) The port to expose when running the container.
working-dir (Optional) The working directory to use within the container.
envs (Optional) The environment variables to be set when running the container. This is a multiline input to add multiple environment variables.For example -
envs: |
GOPATH=/root/buildah

Examples

name: Build Image
on: [push]

jobs:
  build:
    name: Build image
    runs-on: ubuntu-latest

    steps:
    - name: Checkout
      uses: actions/checkout@v2

    - name: Maven
      run: |
        cd ${GITHUB_WORKSPACE}
        mvn package        
    - name: Build Action
      uses: redhat-actions/buildah-action@0.0.1
      with:
        new-image-name: petclinic
        content: |
          target/spring-petclinic-2.3.0.BUILD-SNAPSHOT.jar          
        entrypoint: |
          java
          -jar
          spring-petclinic-2.3.0.BUILD-SNAPSHOT.jar          
        port: 8080

Contributing

This is an open source project open to anyone. This project welcomes contributions and suggestions!

Feedback & Questions

If you discover an issue please file a bug in GitHub issues and we will fix it as soon as possible.

License

MIT, See LICENSE for more information.