API Maker

The framework for AI era

Team & delivery

Git Deployment

Branches, commits and pull requests for everything you build in API Maker. A Git pull is the deployment.

Connect a Git repository and API Maker writes your project into it: APIs, schemas, settings, hooks, events, tests and migrations, as files. Work on a branch, review a pull request, then pull the branch on the server of an environment. The pull is applied all at once, or not at all.

See it live

Step through it, slow it down, or open the full canvas.

api-maker/features/git-deploymentLive
  • Git
  • Stage
  • Done
  • Failed
Stages
16per pull
Done
0of this pull
Pipelines
0to build
Secrets
0in Git

Work on a branch, from API Maker. Create feature_1 from PROD, change APIs, schemas or settings, commit and push. Everything you build goes to Git, secrets never do.

How it works

  1. Work on a branch, from API Maker.

    Create feature_1 from PROD, change APIs, schemas or settings, commit and push. Everything you build goes to Git, secrets never do.

  2. Review it where you review code.

    Open a pull request on GitHub, GitLab or Bitbucket, review the changes and merge them into the branch of the environment.

  3. On the server, a pull is the deployment.

    Press Git pull in the panel, or let your pipeline call the deployment hook with its token and secret, from allowed IPs only if you want.

  4. Cloned, written, committed, live.

    The branch is cloned in memory and written in one database transaction. After the commit, pending migration scripts run, caches and sandboxes are renewed.

  5. A failed pull changes nothing.

    If anything fails before the commit, the transaction is dropped: nothing of the pull is stored and the server keeps serving the version it had.

What you get

Git inside API Maker

Create branches, see the status, commit, push, sync and revert without leaving the admin panel.

Your project as files

Custom APIs, schemas, settings, hooks, groups, events, schedulers, test cases, i18n packs, utility classes and more are files in the repository, easy to review.

History of every item

See the versions of one custom API or schema in Git and bring an older one back.

Deployment hook

Your CI calls a URL with its access token and secret to pull, optionally only from allowed IP addresses. The last hits are listed.

All or nothing

The branch is written in one database transaction. Until it commits nothing is stored, so a failure leaves the server on the version it had.

Upgrade API Maker too

Deploy a new API Maker version from the panel: every server of the cluster installs it, with live progress, and keeps its .env and license.

An example

DEV, QA, UAT, PROD

Each environment has its server and its branch. A developer builds on feature_1, opens a pull request into QA, and the QA server pulls it. The same review and pull promote it to UAT and then to production, where the pending migration scripts run on the way.

Good to know

  • Secrets stay on each server. Set the secret of every environment on its own server.
  • Data is not in Git. Use migration scripts to change the structure or seed data of each environment.

Questions

What happens after a pull commits?

Pending migration scripts run, every cache is reset and the sandboxes of the account are renewed, so the next request runs the new code.

Can two pulls run at the same time?

No. A cluster wide lock keeps the pulls of an account one after another.

Can I see the progress of a pull?

Yes. The panel shows each stage as it happens: cloning, writing, committing, migrations and cache reset.