You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Sep 1, 2022. It is now read-only.
This repository powers the Learning Lab course [_GitHub Actions: Writing JavaScript actions_](https://lab.github.com/githubtraining/github-actions:-writing-javascript-actions/).
6
+
7
+
Every Learning Lab course is made up of:
8
+
- a [course repository](https://github.com/githubtraining/write-javascript-actions), and
9
+
- a [template repository](https://github.com/githubtraining/write-javascript-actions-template)
10
+
11
+
The course repository is written in YAML and Markdown. The template repository could be written in any language that supports the learning objectives.
12
+
13
+
For more information on the goals of this course, check out the [`course-details.md`](course-details.md).
14
+
15
+
## Contribute
16
+
17
+
See something we could improve? Check out the contributing guide in the [community contributors repository](https://github.com/githubtraining/community-contributors/blob/master/CONTRIBUTING.md) for more information on the types of contributions we :heart: and instructions.
18
+
19
+
We :heart: our community and take great care to ensure it is fun, safe and rewarding. Please review our [Code of Conduct](https://github.com/githubtraining/community-contributors/blob/master/CODE_OF_CONDUCT.md) for community expectations and guidelines for reporting concerns.
20
+
21
+
## License
22
+
23
+
All Learning Lab course repositories are licensed under [CC-BY-4.0](../LICENSE) (c) 2019 GitHub, Inc. The template repositories associated with each course may have different licenses.
24
+
25
+
When using the GitHub logos, be sure to follow the [GitHub logo guidelines](https://github.com/logos)
[GitHub Actions](https://github.com/features/actions) is a powerful platform that empowers your team to go from code to cloud all from the comfort of your own repositories.
2
2
3
-
Over the duration of this course, approximately 1 hour, you will learn the skills needed to begin using and customizing GitHub Actions in your unique workflow scenarios.
3
+
Over the duration of this course, approximately 1 hour, you will learn the skills needed to begin using and customizing GitHub Actions to fit your unique workflow scenarios.
4
4
5
-
**Prerequisites**
5
+
## What you'll learn
6
6
7
-
We will be using Node.js to build our action and GitHub to consume our action. This presents us with a hybrid environment, the Node.js runtime environment and the virtual machine used by GitHub Actions, that you may not be used to if you've taken other Learning Lab courses.
7
+
In this course you will learn how to:
8
8
9
-
Before we can get started there are a few things you need to setup on your **local machine**
9
+
- Consume actions within a workflow file
10
+
- Create custom JavaScript based actions
11
+
- Publish your newly created action to the marketplace
10
12
11
-
1. Install [Node.js](https://nodejs.org/en/) for your operating system.
12
-
2. Ensure you have a text editor installed. I'll be using Visual Studio Code, and although you are free to use your editor of choice you should be aware that using a different editor will result in your screen not matching my examples. Here are some editor options for you:
13
-
1.[Visual Studio Code](https://code.visualstudio.com/)**(recommended)**
14
-
2.[Atom](https://atom.io/)
15
-
3.[Sublime Text](https://www.sublimetext.com/)
16
-
3. Lastly, you're going to need a local installation of [Git](https://git-scm.com/) so that you can interact with this repository as you write code.
13
+
You'll know the answers to questions like:
14
+
15
+
- What is a workflow?
16
+
- What are actions?
17
+
- What is action metadata?
18
+
- What are GitHub Actions capable of?
19
+
20
+
## What you'll build
21
+
22
+

23
+
24
+
In this course you will build three actions that each accomplish different tasks designed to demonstrate the flexibility of creating and consuming JavaScript Based Actions.
25
+
26
+
First, you will start with the traditional "Hello World!" program which will teach you where to find the output of a workflow run. You will then modify this "Hello World!" action to accept `input` parameters which allow the action to be more dynamic.
27
+
28
+
Second, you will write an action that call upon an external API to retrieve a fact about cats and prints it to the workflows output. You will then modify this cat fact action to set the retrieved data as `output` for another action in the workflow to consume.
29
+
30
+
Lastly, you will write a third action that will open an issue in your repository making the cat fact available to everyone. You will learn how to use the `output` of previous actions as `input` for current actions in this step.
31
+
32
+
## Prerequisites
33
+
34
+
We first recommend taking the following courses:
35
+
-[Hello, GitHub Actions!](https://lab.github.com/github/hello-github-actions!) to learn the basics of how GitHub Actions work
36
+
-[GitHub Actions: Continuous Integration](https://lab.github.com/githubtraining/github-actions:-continuous-integration) to dive deeper into a workflow file
37
+
38
+
## Projects used
39
+
40
+
This makes use of the following open source projects. Consider exploring these repos and maybe even making contributions!
41
+
42
+
-[GitHub Actions Toolkit](https://github.com/actions/toolkit), a multipurpose JavaScript library for writing actions
0 commit comments