github actions
-
github actions expressions & contextsgithub actions 2022. 3. 4. 16:01
${{ expression }} 을 사용할 수 있다. contexts 정보를 참조할 수 있는데, 공식 문서를 확인해 보자 Example: printing context information - 링크 name: Context testing on: push jobs: dump_contexts_to_log: runs-on: ubuntu-latest steps: - name: Dump GitHub context id: github_context_step run: echo '${{ toJSON(github) }}' - name: Dump job context run: echo '${{ toJSON(job) }}' - name: Dump steps context run: echo '${{ toJSON(steps) ..
-
파일 암호화 하기github actions 2022. 3. 4. 15:11
secret variable 로 처리하기에는 내용이 너무 크거나 혹은 인자로 비밀정보가 들어 있는 파일을 받아 처리해야 할 경우 어떻게 해야할까? step1) GnuPG 를 이용해 암호화 - 암호화 과정에서 사용자가 지정한 passphrase 를 사용 step2) 위의 passphrase 를 Github actions 의 secret 에 등록 step3) workflow 에서 등록된 passphrase 를 사용해 복호화 예제 api_key.json 파일을 암호화 api_key.json 파일의 내용 { "access-key": "abc123" } passphrase 로 1234 를 사용해 api_key.json 을 암호화한 api_key.json.gpg 파일 생성 gpg --symmetric --ciphe..
-
GITHUB_TOKEN 사용하기github actions 2022. 3. 2. 22:47
github actions doc 에 나온 것 처럼, github 에서 자동으로 만들어 주는 GITHUB_TOKEN 을 이용할 수 있다. 예제1 push 하면 이슈를 만들어 주도록 하기 - 코드보기 예제2 echo $RANDOM >> random.txt shell 명령어로 random.txt 파일을 만든 후 repository 에 추가후 push 한다. name: adds random file on: push env: WF_ENV: Available to all jobs jobs: adds-random-file: runs-on: ubuntu-latest steps: - name: Push a random file run: | pwd ls -a git init git remote add origin "ht..
-
환경 변수 설정하기github actions 2022. 3. 1. 23:03
env 를 이용해 global, job, step 단위로 설정할 수 있다. 코드 name: ENV Variables on: push env: WF_ENV: Available to all jobs jobs: log-env: runs-on: ubuntu-latest env: JOB_ENV: Available to all steps in log-env job steps: - name: Log ENV Variables env: STEP_ENV: Available to only this step run: | echo "WF_ENV: ${WF_ENV}" echo "JOB_ENV: ${JOB_ENV}" echo "STEP_ENV: ${STEP_ENV}" log-default-env: runs-on: ubuntu-la..
-
workflow 실행 조건을 branches, tags, paths 로 제한하기github actions 2022. 2. 27. 18:03
코드 name: Filter Conditions on: push: branches: # branches-ignore - master - 'feature/*' # matches feature/featA - 'feature/**' # matches feature/featA, feature/feat/A - '!feature/featC' tags: # tags-ignore - v1.* paths: # paths-ignore - '**.js' # only any javascript files jobs: run-github-actions: runs-on: ubuntu-latest steps: - name: List Files run: | pwd ls -a github actions filter 가이드 문서 보기 참..
-
cron schedule 설정하기github actions 2022. 2. 27. 17:24
코드 ame: Cron Schedule on: schedule: - cron: "*/5 * * * *" pull_request: types: [opened, reopend, closed] jobs: run-github-actions: runs-on: ubuntu-latest steps: - name: List Files run: | pwd ls -a 설명 on 하위에 schedule 로 설정한다. 최소 설정 단위는 5분 마다이다. (1분마다 trigger 되도록 할 수는 없다) cron expression 이 자신 없다면 crontab guru 에서 확인해 보자. 참고: https://www.udemy.com/course/github-actions
-
pull_request event 로 activity_type 살펴보기github actions 2022. 2. 27. 16:57
문제 event 에 대한 github actions 문서를 보면 push 의 경우에는 딱히 더 설정할 activity 가 없지만, pull_request 는 activity 를 추가로 설정할 수 있다. 예제 코드를 작성해 보자 코드 name: Pull Request Action on: push: pull_request: types: [opened, reopend, closed] jobs: run-github-actions: runs-on: ubuntu-latest steps: - name: List Files run: | pwd ls -a 참고: https://www.udemy.com/course/github-actions