Skip to content

No CLI surface for git integrations — --source github dead-ends on an unconnected workspace #1428

Description

@l2ysho

Summary

apify create --source github depends on the target workspace being a connected git integration, but the CLI has no integrations command. When the workspace is missing, an agent can detect the problem and then do nothing about it — the recovery path is only reachable through a raw API call it has no reason to guess.

Version: apify-cli/1.10.0 (d227b1f).

What happened

apify create --help says, of --git-repo:

a workspace being an account or organization you have given Apify access to […] List yours with "apify api integrations/git".

So the documented way to list your own integrations is a raw API call. It returns:

{
  "data": [
    {
      "id": "github-app",
      "provider": "github",
      "workspaces": [
        { "id": "apify-projects", "label": "apify-projects" },
        { "id": "apify", "label": "apify" }
      ],
      "addWorkspaceUrl": "https://github.com/apps/apify/installations/new"
    }
  ]
}

My personal GitHub account is not in workspaces, so --source github --git-repo <me>/<repo> cannot target it. The response contains exactly the field needed to fix that — addWorkspaceUrl — but nothing in the CLI surfaces it.

The gap

apify help lists no integrations command. There is no:

  • apify integrations git ls — show connected providers and workspaces
  • apify integrations git add — open addWorkspaceUrl in a browser

So the flow dead-ends. An agent driving the CLI can determine the workspace is missing and can print a URL, but cannot complete or even properly guide the recovery — and --source github presumably fails on an unconnected workspace without pointing at the install URL either.

Suggested

  1. Add apify integrations git ls [--json] wrapping the endpoint the help text already tells people to call by hand.
  2. Add apify integrations git add that opens addWorkspaceUrl (and prints it for non-interactive contexts).
  3. When --source github --git-repo owner/name names an unconnected workspace, fail with the install URL in the error, not just "not found".

Point 3 alone would resolve most of the friction: it puts the recovery path where the failure happens.

Related: #1424, #1425.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    t-buildersIssues owned by the Builders team.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions