python_MakesolvedAcBot
Solved ac slack bot 만들기
하루에 한 번 내가 그 날 푼 문제들을 알려주는 봇
내가 푼 문제들을 저장한 후 다음 날과 비교하여 달라졌으면 출력
- 서버에서 푼 문제들을 받아와서 가공할 것
- 문제 정보
- 번호
- 이름
문제 정보를 받아와서 dictionary에 저장
* key : 문제 번호
* value : 문제 이름
데이터
mazassumnida 분석
What is github action
- github 자체 CI/CD 플랫폼
- Package Registry 저장소
- 소스코드를 빌드하고 난 artifact들을 저장하고 관리 배포함
- 사용 신청을 해야함
- 리눅스, macOs, 윈도우 플랫 폼 제공
- 병렬로 워크플로우 실행 가능(MATRIX)
WorkFlow
자동화된 전체 프로세스를 나타낸 순서도
workflow file을 전달하면 github actions가 실행
Job
여러 step을 그룹 지어주는 역할, 단일한 가상환경 제공
각 잡끼리 서로 다른 가상 환경 부여 가능
잡끼리 디펜던시를 설정, 병렬 실행 가능
- step
- job 안에서 순차적으로 실행되는 프로세스 단위
- 파일 시스템을 통하여 서로 정보를 공유할 수 있음
- 명령을 내리거나 action 실행 가능
Action
단순히 os에서 지원하는 명령 뿐만 아니라 미리 제공된 action 또는 사용자가 커스텀한 액션을 호출하는 매커니즘
도커 컨테이너나 자바스크립트를 통해서 실행됨
Event
정의한 workflow를 언제 실행시킬 것인가
깃허브 액션 어떡할래?
이 글을 보면 이전 스텝의 결과 값을 매개변수로 받을 수 있음
- 어제까지 푼 문제 목록들을 저장소에 저장
- 레퍼지터리 파일을 참조 가능
- 레퍼지터리를 루트로해서 그냥 가져옴
- 액션 내에서 파일을 저장소에 저장 가능
- 레퍼지터리 파일을 참조 가능
- 오늘까지 푼 문제들과 비교
- 비교해서 추가된 문제들을 반환 받음
- 오늘까지 푼 문제들은 다시 저장
- 슬랙으로 메시지 보냄
Comment