GitHub
This topic explains in detail the Integration between Appdome and GitHub Actions.
To successfully secure your applications with Appdome from GitHub platform, you can either use "Appdome build-2secure" action, or use Appdome DEV-API.
build-2secure action - Recommended
With this action, you can easily secure and customize your mobile apps on GitHub, including signing your app with your own enterprise certificate for added flexibility and control. No coding or technical expertise is required.
For detailed information about integrating "Appdome build-2secure" action into your GitHub workflow, please follow: Appdome build-2secure KB
DEV-API
To successfully use Appdome DEV-API in GitHub environment, please follow the below steps:
Requirements:
An Appdome account
Appdome’s token
Fusion-Set ID
A GitHub account
An active repository
.yml file locate on path <repository/.github/workflows/.yml>
If workflow file does not exist:
- On your repository, click on "actions" tab.
- Then click on "New workflow" button.
- Next, click on, "set up a workflow yourself".
- Copy this snipped code to your new workflow file
# A simple .yml template locate on <repository/.github/workflows/appdoem_ci.yml>
name: APPDOME_CI_EXAMPLE
# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the "main" branch
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v3
API implementation
Steps:
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v3
- name: Install requirments
run: |
sudo apt update && sudo apt upgrade
sudo apt install -y curl
sudo apt install -y jq
- name: Upload none protected application to Appdome
run: |
publicLink=$(curl -s --request GET \
--url "https://fusion.appdome.com/api/v1/upload-link" \
--header "Authorization: <API-Toke>")
curl -s -X PUT "$(echo "$publicLink" | jq -r .url)" \
--header 'Content-Type: application/x-compressed-tar' \
-T "<app-file-name>"
app=$(curl -s \
--request POST \
--url "https://fusion.appdome.com/api/v1/upload-using-link" \
--header "Authorization: <API-Toke>" \
--header 'content-type: multipart/form-data' \
--form file_name="<app-file-name>" \
--form file_app_id="$(echo "$publicLink" | jq -r .file_id)")
- name: Buid none protected application on Appdome fusion platform
run: |
task_id=$(
curl -s --request POST \
--url "https://fusion.appdome.com/api/v1/tasks" \
--header "Authorization: $APPDOME_API_TOKEN" \
--header 'accept: application/json' \
--header 'content-type: multipart/form-data' \
--form action=fuse \
--form fusion_set_id="$FUSION_SET_ID_ANDROID" \
--form app_id="$(echo "$app" | jq -r .id)" \
)
task_id="$(echo "$task_id" | jq -r .task_id)"
echo "task-id: $task_id"
Continue with implementing each part of the build process as documented in the How to section.
Updated 8 months ago