Code Engine GitHub Action
ActionsTags
(2)Verified
This GitHub Action allows you to interact with IBM Cloud Code Engine. Deploy Apps, Jobs, and Functions. It offers flexibility for different deployment types and provides various configuration options.
Name | Required | Default Value | Description |
---|---|---|---|
api-key |
✅ | - | IAM API Key used to log into the IBM Cloud. Please store your IBM Cloud API key securely in your GitHub repository Secrets. |
resource-group |
❌ | Your Default Resource Group | An IBM Cloud Resource Group, a logical container for organizing and managing related cloud resources. |
region |
✅ | - | The geographical area where your Code Engine project is located, like eu-de codeengine-regions |
project |
✅ | - | The unique identifier (GUID) or the name that identifies your IBM Cloud Code Engine project. |
component |
✅ | - | The type of component to deploy. allowed values application , app , function , func , fn , job |
name |
✅ | - | The name of the App, Function, or Job. |
build-source |
❌ | . | Path to the directory containing the source code. See the Docs for additional information on how Code Engine builds Apps, Jobs and Functions |
build-size |
❌ | medium | The size of the build defines how CPU cores, memory, and disk space are assigned to the build. See the Docs for additional information for Apps, and Jobs |
cpu |
❌ | 1 / 0.5 | CPU value set for your component Default for Apps and Jobs 1 vCPU, 0.5 vCPU for Functions. Config for Functions, Codeengine Memory CPU combo |
memory |
❌ | 4G / 2G | Memory value set for your component Default for Apps and Jobs 4 GB, 2GB for Functions. Config for Functions, Codeengine Memory CPU combo |
runtime |
❌ | - | The runtime used for the Function. Currently supported nodejs-18 and python-3.11 see IBM Code Engine Function Runtimes for more information. |
To use this action, add it to your GitHub Actions workflow YAML file also make sure to add your IBM Cloud API Key as GitHub Action Repository Secret. There is a example for deploying an App, Job and Python/Node.js Function.
Deploy an App: deploy-app.yml
: Deploy your app to Default
resource-group in eu-de
to the project MY-PROJECT
with its source code in the root of the repository the name of the app ismy-app
.
name: Deploy App to Code Engine
on:
push:
branches:
- main
workflow_dispatch:
jobs:
deploy-app:
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Deploy Application to Code Engine
uses: IBM/code-engine-github-action@v1
with:
api-key: ${{ secrets.IBM_IAM_API_KEY }}
resource-group: 'Default'
region: 'eu-de'
project: 'MY-PROJECT'
component: 'app'
name: 'my-app'
build-source: './'
cpu: 1
memory: 4G
Deploy a Job: deploy-job.yml
: Deploy your Job to Default
resource-group in eu-de
to the project MY-PROJECT
with its source code in the root of the repository the name of the job ismy-job
.
name: Deploy App to Code Engine
on:
push:
branches:
- main
workflow_dispatch:
jobs:
deploy-job:
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Deploy Job to Code Engine
uses: IBM/code-engine-github-action@v1
with:
api-key: ${{ secrets.IBM_IAM_API_KEY }}
resource-group: 'Default'
region: 'eu-de'
project: 'MY-PROJECT'
component: 'job'
name: 'my-job'
build-source: './'
cpu: 1
memory: 4G
Deploy a Node.js Function: deploy-nodejs-func.yml
: Deploy your Node.js Function to Default
resource-group in eu-de
to the project MY-PROJECT
with its source code in the root of the repository the name of the function ismy-js-fn
.
name: Deploy a Node.js Function to Code Engine
on:
push:
branches:
- main
workflow_dispatch:
jobs:
deploy-nodejs-junc:
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Deploy JavaScript Function to Code Engine
uses: IBM/code-engine-github-action@v1
with:
api-key: ${{ secrets.IBM_IAM_API_KEY }}
resource-group: 'Default'
region: 'eu-de'
project: 'MY-PROJECT'
component: 'fn'
runtime: nodejs-18
name: 'my-js-fn'
build-source: './'
cpu: 1
memory: 4G
Deploy a Python Function: deploy-python-func.yml
: Deploy your Python Function to Default
resource-group in eu-de
to the project MY-PROJECT
with its source code in the root of the repository the name of the function ismy-py-fn
.
name: Deploy a Python Function to Code Engine
on:
push:
branches:
- main
workflow_dispatch:
jobs:
fn-py:
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v3
- name: Deploy Python Function to Code Engine
uses: IBM/code-engine-github-action@v1
with:
api-key: ${{ secrets.IBM_IAM_API_KEY }}
resource-group: 'Default'
region: 'eu-de'
project: 'MY-PROJECT'
component: 'fn'
runtime: python-3.11
name: 'my-py-fn'
build-source: './'
cpu: 1
memory: 4G
Code Engine GitHub Action is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.