Skip to content

sinedied/publish-devto

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

📮 publish-devto

Build Status XO code style License

GitHub Action to publish markdown files as articles on dev.to platform, with assets hosted on GitHub.

Usage

See action.yml.

steps:
- uses: actions/checkout@v2
- name: Publish articles on dev.to
  uses: sinedied/publish-devto@v2
  with:
    # Your dev.to personal API key to publish and update articles.
    # See https://docs.dev.to/api/#section/Authentication/api_key
    devto_key: ${{ secrets.DEVTO_TOKEN }}
    # Your GitHub personal access token, used to create commits for updated files.
    # If you have a protected branch, you need to use a personal access token
    # with the 'repo' permission.
    # See https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token
    github_token: ${{ secrets.GITHUB_TOKEN }}
    # (Optional) The files to publish. Default is "posts/**/*.md"
    files: 'posts/**/*.md'
    # (Optional) The git branch to use. Default is 'main'.
    branch: main
    # (Optional) Use conventional commit messages. Default is false.
    # See https://www.conventionalcommits.org. 
    conventional_commits: true
    # (Optional) Do not make actual changes on dev.to.
    dry_run: false

You can use this template repository as an example setup.

Using a custom committer

You can specify who you want to appear in the commits made by this action by adding these environment variables to the action:

  env:
    GIT_COMMITTER_NAME: your_name
    GIT_COMMITTER_EMAIL: your@email.com

How does it work?

This github action delegates most of the work to the devto-cli push command.

You can find more information about how it works in the CLI readme.