GitHub Action
Setup Appwrite CLI
Appwrite is an open-source backend as a service server that abstracts and simplifies complex and repetitive development tasks behind a very simple to use REST API. Appwrite aims to help you develop your apps faster and in a more secure way.
Use the CLI to integrate your CI with the Appwrite server to easily start interacting with all of Appwrite backend APIs and tools. For full API documentation and tutorials, go to https://appwrite.io/docs
This action can be used in many ways:
- To add Appwrite CLI to your GitHub actions
- To log in to your Appwrite instance using email and password.
- To log in to your Appwrite instance using an API key and project ID.
- Optionally: you can pass a list of action to execute using the Appwrite CLI.
Required: NO
Appwrite Endpoint, e.g. https://cloud.appwrite.io/v1
Required: NO
Enter the login method to your Appwrite instance, available options
- key
When using email, you'll need to pass email and password
- name: Appwrite action
uses: appwrite/setup-for-appwrite@v2
with:
method: email
email: ${{ secrets.EMAIL }}
password: ${{ secrets.PASSWORD }}
When using key you'll need to pass the API key and project ID
- name: Appwrite action
uses: appwrite/setup-for-appwrite@v2
with:
method: key
key: ${{ secrets.API_KEY }}
project: ${{ vars.PROJECT_ID }}
self_signed: true
Required: NO
User email
Required: NO
User password
Required: NO
Project ID
Required: NO
API Key
Required: NO
Whether you are using a self-signed, local certificate
Required: NO
When set to true
, push or pull actions will have the --force
flag
Required: NO
When set to true
, push or pull actions will have the --all
flag
Required: NO
List of appwrite actions to execute, you can use write the command with or without the leading appwrite
actions: |-
appwrite push functions
push collections
name: List of users
on:
workflow_dispatch:
jobs:
migrate:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup Appwrite
uses: appwrite/setup-for-appwrite@v2
- name: List users
run: appwrite users list
name: Database Migrations
on:
release:
types: [ published ]
jobs:
migrate:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup Appwrite
uses: appwrite/setup-for-appwrite@v2
with:
method: email
email: ${{ secrets.EMAIL }}
password: ${{ secrets.PASSWORD }}
force: true
all: true
actions: |-
push collections