GithubHelp home page GithubHelp logo

githubtraining / write-github-script Goto Github PK

View Code? Open in Web Editor NEW
6.0 2.0 8.0 118 KB

Course repo for Learning Lab course GitHub Actions: Using GitHub Script

Home Page: https://lab.github.com/githubtraining/github-actions:-using-github-script

License: Creative Commons Attribution 4.0 International

learning-lab course hacktoberfest

write-github-script's Introduction

Learning Lab bot

Course: GitHub Actions: Using GitHub Script

This repository powers the Learning Lab course GitHub Actions: Using GitHub Script.

Every Learning Lab course is made up of:

The course repository is written in YAML and Markdown. The template repository could be written in any language that supports the learning objectives.

For more information on the goals of this course, check out the course-details.md.

Contribute

See something we could improve? Check out the contributing guide in the community contributors repository for more information on the types of contributions we ❤️ and instructions.

We ❤️ our community and take great care to ensure it is fun, safe and rewarding. Please review our Code of Conduct for community expectations and guidelines for reporting concerns.

License

All Learning Lab course repositories are licensed under CC-BY-4.0 (c) 2019 GitHub, Inc. The template repositories associated with each course may have different licenses.

When using the GitHub logos, be sure to follow the GitHub logo guidelines

write-github-script's People

Contributors

brianamarie avatar geoffreywiseman avatar hectorsector avatar mattdavis0351 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

write-github-script's Issues

Consider validating against PR titles instead of numbers

When validating a learner's action, leaving everything up to the pull request number puts the learner in a state that they are unable to recover from. For example, after the learner merges say PR 2, and let's assume Learning Lab misses that event (it did in my testing), the learner is then unable to move forward because they are told to merge PR 2. Instead, we can capture the title, and tell the learner that all the need to do is merge a PR with that title.

- type: gate
every: true
gates:
- left: '{{ payload.pull_request.number }}'
operator: ===
right: '{{ store.firstPullNumber }}'
- left: '{{ payload.pull_request.merged }}'
else:
- type: respond
with: e-generic.md
data:
expected: merge pull request '{{ store.firstPullNumber }}'

Suggestion: trim down text on first issue

There's a lot of explanation on the first issue. I think we might have a better engagement rate with the course if we instead take the first PR as an opportunity to explain the script. I like the pattern of introducing a change, and then commenting with an explanation of what that change offers. The effect of this would look something like this:

Screen Shot 2020-03-30 at 11 37 51 AM

Suggestion: meaningful PR names

I know we talked a little bit about PR names already, @mattdavis0351, but whether or not we validate the names of the learner's PR, I think we should definitely be suggesting meaningful PR names. This would help any learner better digest the work they're performing. If they want to accept the default Create my-workflow.yml or Update my-workflow.yml that's fine and their prerogative, but overall it would make a much nicer learning experience if their final repo had PRs that reflected the work they did, like Use GitHub-script to comment on a newly created issue and Use a workflow to put a new issue in triage.

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.