Code Monkey home page Code Monkey logo

github-issues-asana-tasks-action's Introduction

GitHub Issues To Asana Tasks

Version 0.0.24

This integration creates Asana Tasks from GitHub issues. Once linked, Asana issues will be updated when Issues are updated or commented upon. The linked Asana Task will be completed when the GitHub issue is closed.

Issues as Tasks

Tasks are a better mirror of Issues than Pull Requests. Issues are created because something needs doing, eg. there is a task to be done. Pull Requests are often created specifically to resolve an issue, eg. to complete a task.

Task Issue Pull Request
Feature/Bug Described Task Created Issue Created -
Creative/Research Task Updated Issue Updated -
Work Started Task Updated Issue Updated Pull Request Created
Work Completed Task Completed Issue Closed Pull Request Accepted

Other wins

Because development happens on GitHub, having Issues attached to the code greatly reduces developer friction and prevents flow-breaking context shifts. Issues are attached to the code, and can be updated and resolved as part of the normal Git workflow. Issue creation is significantly more robust and faster using GitHub on Mobile, so QA can happen anywhere on a single device -- activating Mobile-friendly in-between spaces like subway commutes and other downtime.

Example Action

To use this action, add a workflow like this to your repo:

name: GitHub Issues to Asana Tasks

on:
  issues:
    types: [opened, closed, reopened]
  issue_comment:
    types: [created]

jobs:
  issues-to-tasks:
    runs-on: ubuntu-latest

    steps:
      - name: GitHub Issues To Asana Tasks
        uses: ideasonpurpose/[email protected]
        env:
          ASANA_PAT: ${{ secrets.ASANA_PAT }}

How it works

After adding the GitHub Action to a repository, two things are required for the action to do anything. The repository or organization must have an Asana Personal Access Token stored as a GitHub Secret named ASANA_PAT, and the issue must include an Asana Project Link in its Issue description.

  • On Issue Creation
    For newly created Issues, the Action will attempt to create a new Task in Asana, in the project linked in the description. New Tasks will appear at the top of the first group (column/list) but can be moved anywhere in the project. The GitHub Issue's description will be used to populate the task note, along with a link back to the Issue.

  • On Issue Updates (comments)
    For existing issues containing an Asana Project link, the Action will search the Project for a Task whose note contains the GitHub Issue permalink. If found, that Task will be updated with the new Issue comment.

  • On Issue Closed/Re-opened
    For existing issues containing an Asana Project link, the Action will search the Project for a Task whose note contains the GitHub Issue permalink. If found, that Task's completed status will be updated.

About Personal Access Tokens

API operations authenticated with Personal Access Tokens will assume the identity of the user who created the token. We recommend creating a bot account in your Asana workspace. Log in as the bot user and follow Asana's documentation for creating a Personal Access Token.

github-issues-asana-tasks-action's People

Contributors

joemaller avatar

Watchers

 avatar Codrin Pavel avatar

github-issues-asana-tasks-action's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.