Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create an issue comment with GitHub Script #3

Closed
github-learning-lab bot opened this issue Apr 17, 2021 · 4 comments
Closed

Create an issue comment with GitHub Script #3

github-learning-lab bot opened this issue Apr 17, 2021 · 4 comments

Comments

@github-learning-lab
Copy link

Look 👀 at you!

Super awesome job so far!

Do you remember what our workflow trigger was?

on:
  issues:
    types: [opened]

This means that every time an issue gets opened in this repository the GitHub Script you wrote will execute.

You should expect to see the result right here in this issue!

Workflow not running? Click here for some troubleshooting.

Try the following troubleshooting steps:

  1. Click on the Actions tab to see the status of your workflow run. See Managing a workflow run on GitHub Help for more information.
  2. Edit your workflow file and look for errors in the linter built into the browser.
  3. Look for the workflow trigger and ensure you are performing an action that triggers that workflow.

If you need to make changes to your code, remove the main branch protection and merge your changes into the main branch.


I'll respond in this issue after your workflow runs!

@github-actions
Copy link

🎉 You've created this issue comment using GitHub Script!!!

@github-learning-lab
Copy link
Author

Success 🎉!!!

@JDoornink you're doing great! You've just used GitHub Script to comment on this issue!

Why might this be useful?

Using GitHub Actions can really help automate the events that take place in your repositories. Imagine it was a repository visitor who opened a new issue containing information about a critical bug. I assume you'd want to thank them for bringing that to your attention, however this simple task can become overwhelming as your repository attracts more visitors. By automating an issue comment we could easily thank our visitors every single time without the overhead of doing it manually.

What about us?

For the rest of the course we are going to design a workflow that helps us move issues into a GitHub Project board when they are created. This will give us increased visibility on the work that needs triage!

@github-learning-lab
Copy link
Author

Let's add a card to a project board

We have added a project board to this repository for you. We will use this board, named Learning Lab Project Board, to add cards to when a new issue is created in your repository!

Like creating comments and opening pull requests, octokit/rest.js can be used for many more types of interactions. Managing GitHub Projects makes that list!

Things aren't always as they appear!
Although this is not a course on octokit/rest.js, it is important to tell you a little secret right here before we move on. For you to be able to use the `projects.createCard()` method there were some pieces of information we needed beforehand. Things like the `column_id` so we know which column to add the card to and even a `project_id` so we know which board that column belongs to.

We've gone ahead and done this on our end of things so that we could give you the final piece to the puzzle and demonstrate how to use GitHub Script. So if you try to recreate this on your own, without the help of Learning Lab you will need to get that information and parse it in a way that works well for your use case!

⌨️ Activity: Add newly opened issue to project board

  1. Edit the current workflow .github/workflows/my-workflow.yml to have the following contents:

    name: Learning GitHub Script
    
    on:
      issues:
        types: [opened]
    
    jobs:
      comment:
        runs-on: ubuntu-latest
        steps:
        - uses: actions/github-script@0.8.0
          with:
            github-token: ${{secrets.GITHUB_TOKEN}}
            script: |
                github.issues.createComment({
                issue_number: context.issue.number,
                owner: context.repo.owner,
                repo: context.repo.repo,
                body: "🎉 You've created this issue comment using GitHub Script!!!"
                })
                github.projects.createCard({
                column_id: 13909142,
                content_id: context.payload.issue.id,
                content_type: "Issue"
                });
  2. Commit the workflow to a new branch.

  3. Create a pull request, I suggest the title Add issues to project board.

  4. Supply the pull request body content and click Create pull request.


I am waiting for you to create a new pull request before moving on.

I'll respond in the new pull request when I detect it has been created.

@github-learning-lab
Copy link
Author

A new pull request

I have created a new pull request where we will continue this lesson. Click the link to meet me over there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

0 participants