NodeOps
KR

CI/CD Usage

Every CreateOS CLI command works in non-interactive mode. Use flags instead of prompts, --output json for machine-readable output, and --force to skip confirmation prompts.


Authentication in CI

Use an API token instead of browser OAuth:

Bash
1createos login --token

Set the token via environment variable or pipe it in. Get your API key from Profile Settings > API Keys in the CreateOS dashboard.


Common CI commands

Deploy

Bash
1createos deploy --project $CREATEOS_PROJECT_ID

Set environment variables from CI secrets

Bash
1createos env set \
2 DATABASE_URL=$DB_URL \
3 API_KEY=$API_KEY \
4 --project $CREATEOS_PROJECT_ID \
5 --environment $CREATEOS_ENV_ID

Push a local .env file

Bash
1createos env push --file .env.production --project $ID --environment $ID --force

Check deployment status

Bash
1createos status --project $ID --output json

Delete resources without prompts

Bash
1createos domains delete --project $ID --domain $DOMAIN_ID --force
2createos deployments cancel --project $ID --deployment $DEPLOY_ID --force
3createos cronjobs delete --project $ID --cronjob $CRON_ID --force

JSON output

Add --output json or -o json to any list or get command:

Bash
1# Get project list as JSON
2createos projects list --output json
3
4# Parse with jq
5createos status --output json | jq '.project.status'
6
7# Use in scripts
8DEPLOY_URL=$(createos deployments list -o json | jq -r '.[0].extra.endpoint')

GitHub Actions example

YAML
1name: Deploy to CreateOS
2on:
3 push:
4 branches: [main]
5
6jobs:
7 deploy:
8 runs-on: ubuntu-latest
9 steps:
10 - uses: actions/checkout@v4
11
12 - name: Install CreateOS CLI
13 run: curl -sfL https://raw.githubusercontent.com/NodeOps-app/createos-cli/main/install.sh | sh -
14
15 - name: Authenticate
16 run: createos login --token
17 env:
18 CREATEOS_API_KEY: ${{ secrets.CREATEOS_API_KEY }}
19
20 - name: Deploy
21 run: createos deploy --project ${{ vars.PROJECT_ID }}

Environment variables

VariableDescription
CREATEOS_API_URLOverride API base URL (default: https://api-createos.nodeops.network)
CREATEOS_DEBUGSet to true to enable debug logging
CREATEOS_OUTPUTSet to json for JSON output on all commands

Non-interactive behavior

When the CLI detects a non-TTY environment (piped output, CI runner), it:

  • Skips all interactive prompts
  • Requires explicit flags for any selection (project, environment, deployment)
  • Returns clear error messages if required flags are missing
  • Outputs JSON by default when piped
Bash
1# This works in CI (explicit flags)
2createos env list --project abc-123 --environment prod-456
3
4# This fails in CI (would need interactive selection)
5createos env list
6# Error: non-interactive mode: use --project and --environment flags

100,000명 이상의 빌더. 하나의 워크스페이스.

제품 업데이트, 빌더 스토리, 더 빠르게 출시할 수 있는 기능에 대한 얼리 액세스를 받아보세요.

CreateOS는 아이디어가 컨셉에서 라이브 배포까지 원활하게 이동하는 통합 지능형 워크스페이스입니다. 도구, 인프라, 워크플로 간의 컨텍스트 전환을 제거하고 CreateOS 마켓플레이스에서 즉시 아이디어를 수익화할 수 있습니다.