GH-200 - Author and maintain actions (18% of the exam) - Section 3.5

Select a distribution model among public, private and Marketplace, and publish an action to the GitHub Marketplace.

Choose among public, private, and GitHub Marketplace distribution models based on the intended audience and reuse scope. Publish an action to the GitHub Marketplace by creating a release and meeting the listing requirements.

GitHub Marketplacepublic and private actionspublishingrelease

Practice question for this objective

Free sampleAuthor and maintain actionsmedium

A team has written a custom action and must decide between keeping it in a public repository, keeping it in a private repository, or publishing it to the GitHub Marketplace. They want it to appear in the Marketplace catalogue with search and category placement so the wider community can discover and adopt it. Which two conditions must hold before this Marketplace listing can be created? Select TWO.

  • AThe repository holding the action must be public, because the GitHub Marketplace will only create a listing for an action whose source code is openly readable rather than kept in a private repository. Correct
  • BThe repository must contain a single action defined by an action.yml or action.yaml file at its root, because the Marketplace lists exactly one action per repository identified by that root metadata file. Correct
  • CThe repository must enable GitHub Pages on its default branch, because the Marketplace renders the listing's description page from the published Pages site rather than from the action's own metadata file.
  • DThe repository must store the action inside a docker subdirectory, because the Marketplace only accepts container actions and expects the Dockerfile and metadata to live together beneath that folder.
Recognise that a Marketplace listing requires a public repository holding a single action defined by a root action.yml or action.yaml file. Before an action can be listed on the GitHub Marketplace, its repository must be public so the source is openly readable, and it must hold exactly one action defined by a single action.yml or action.yaml metadata file at the repository root. GitHub Pages plays no part in listing creation, and the Marketplace accepts JavaScript, composite, and Docker action types, so neither a Pages site nor a docker subdirectory is a precondition.

Why A is correct: A Marketplace listing requires the action to live in a public repository, so a private repository cannot be listed and the source must be openly readable to be published.

Why B is correct: The Marketplace recognises one action per repository through a single action.yml or action.yaml at the root, so a missing or misplaced metadata file blocks the listing entirely.

Why C is wrong: Tempting because Pages publishes web content, but Marketplace listings draw from the release and metadata, so enabling Pages is irrelevant to creating a listing.

Why D is wrong: Tempting since container actions exist, but the Marketplace lists JavaScript, composite, and Docker actions alike, so no docker subdirectory layout is required.

See more GH-200 practice questions, answers explained.

Exam traps in Author and maintain actions

Answers that look right on this material and are not. Each one is a distractor from a different question in the GH-200 bank for this domain.

  • By enabling GitHub Pages for the repository, because the Marketplace listing is generated from the published Pages site and updates whenever a new commit is pushed to the configured Pages branch.

    Why it is wrong: Tempting because Pages publishes content, but GitHub Pages serves a website and has no role in Marketplace listings, which are created from releases rather than a Pages site.

  • It grants the action elevated GITHUB_TOKEN permissions automatically, because the Marketplace review process trusts listed actions and widens the default token scope for any workflow that calls the listed action.

    Why it is wrong: Tempting since listings imply some vetting, but Marketplace publication never alters GITHUB_TOKEN permissions, which are controlled by the consuming workflow's permissions key instead.

  • The listing automatically widens the GITHUB_TOKEN scope for any workflow that calls the action, because Marketplace review grants listed actions elevated default permissions across consuming repositories.

    Why it is wrong: Tempting since listings imply vetting, but Marketplace publication never alters GITHUB_TOKEN permissions, which the consuming workflow's own permissions key controls instead.

Examworthy is not affiliated with or endorsed by GitHub. Original, blueprint-aligned practice material only.