npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@myeonghoon/github-actions-playground

v1.0.1

Published

github-actions를 활용한 여러 워크플로우 테스트

Readme

Github Actions

빌드, 테스트 및 배포 파이프라인을 자동화 할 수 있는 CI/CD 플랫폼이다. 리포지토리에 대한 Pull Request나 병합된 Pull Request를 프로덕션에 배포할 수 있는데 이를 워크플로우(workflow)로 구현하여 관리할 수 있다. 구현한 워크플로우를 실행할 수 있는 가상 머신을 제공해주므로 개발자 입장에서 유연하게 통합환경을 구성할 수 있다.

Github Actions 구성요소

크게 아래와 같이 5가지 요소로 구성되며 리포지토리에서 특정 작업이 발생할 때 트리거 되도록 구성할 수 있다. 워크플로우에는 순차 또는 병렬적 동작이 가능한 하나 이상의 작업이 포함되어야 한다. 각 작업들은 자체 가상 머신 러너 내부에서 실행된다.

image

Workflows

워크플로는 하나 이상의 작업을 실행하는 구성 가능한 자동화된 프로세스이다. 워크플로는 리포지토리에 체크인된 YAML 파일로 정의되며 리포지토리의 이벤트에 의해 트리거될 때 실행되거나 수동으로 또는 정의된 일정에 따라 트리거될 수 있습니다. 워크플로는 리포지토리의 .github/workflows 디렉터리에 정의되며 리포지토리에는 각각 다른 작업 집합을 수행할 수 있는 여러 워크플로가 있을 수 있다. 예를 들어 풀 리퀘스트를 빌드하고 테스트하는 워크플로, 릴리스가 만들어질 때마다 애플리케이션을 배포하는 워크플로, 누군가 새 이슈를 열 때마다 레이블을 추가하는 또 다른 워크플로를 가질 수 있다.

Events

이벤트는 워크플로 실행을 트리거하는 리포지토리의 특정 활동이다. 예를 들어 누군가 풀 리퀘스트를 만들거나, 이슈를 열거나, 리포지토리에 커밋을 푸시할 때 GitHub에서 활동이 시작될 수 있다. Events that trigger workflows

Jobs

작업은 동일한 러너에서 실행되는 워크플로우의 단계 집합이다. 각 단계는 실행될 작업이며, 단계는 순서대로 실행되며 서로 종속된다. 각 단계는 동일한 러너에서 실행되므로 한 단계에서 다른 단계로 데이터를 공유할 수 있다. 예를 들어 애플리케이션을 빌드하는 단계 다음에 빌드된 애플리케이션을 테스트하는 단계를 가질 수 있다.

// jobs 예시
jobs:
  // 첫 번째 작업
  build:
    steps:
      - name:
        run : 실행할 명령어
      - name:
        run : 실행항 명령어

  // 두 번째 작업
  test:
    steps:
      - name:
        run : 실행할 명령어
      - name:
        run : 실행할 명령어

작업의 종속성을 다른 작업과 구성할 수 있으며, 기본적으로 작업은 종속성이 없으며 서로 병렬로 실행된다. 한 작업이 다른 작업에 종속된 경우 종속된 작업이 완료될 때까지 기다렸다가 실행할 수 있다.

Actions

Actions는 복잡하지만 자주 반복되는 작업들을 처리할 때 유용하다. 가상 머신의 러너에서 Github의 리포지토리를 가져온다거나, 빌드 환경에 적합한 환경을 설정하는 등의 작업을 수월하게 해준다. 직접 action을 만들어 사용할 수 도 있고, Github Marketplace에서 제공하는 공용 action을 불러와 사용할 수 도 있다.

jobs:
  // 첫 번째 작업
  build:
    steps:
      - name: Check out Repository
        // 아래와 같이 actions를 import 할 수 있다.
        uses: actions/checkout@v3

Runners

러너는 워크플로우가 트리거될 때 워크플로우를 실행하는 서버로 가상 머신 환경을 구축하는 인스턴스이다. 다양한 운영체제를 제공하며 각각의 러너는 한 번에 하나의 작업을 실행할 수 있다. jobs의 개별 job 수 만큼 러너가 존재한다.

참고