Hacker News 의견
  • 과거에 bash의 -x 플래그를 사용하여 Actions 워크플로우에서 실행되는 모든 명령을 출력하도록 강제한 경험이 있음. 이는 디버깅에 매우 유용함
  • 작업 중 발견한 GitHub Actions의 멋진 비공식 트릭은 와일드카드를 사용하여 repository_dispatch 이벤트 이름을 매칭하는 것임
    • 이는 중앙 집중식 릴리스 파이프라인을 통해 정의된 재사용 가능한 워크플로우를 강제할 수 있는 유일한 방법임
    • 이벤트를 디스패치할 때 제품과 버전을 쉽게 식별할 수 있음
  • GitHub Actions에서 작업을 적게 할수록 좋다는 경험이 있음
    • 빌드 시스템(예: Make)을 사용하여 로직을 인코딩하고 GitHub Actions에서 호출하거나
    • 작은 CLI 프로그램을 작성하여 GitHub Actions에서 호출하는 것을 선호함
    • 로컬에서 디버깅하는 것이 CI에서 디버깅하는 것보다 훨씬 쉬움
  • 스프레드시트를 코드로 변환하라는 요청을 받았을 때 두려워했던 세대가 있었음
    • 이 세대는 GitHub Actions로 구축된 배포에 규율을 부여하라는 요청을 받을 때 두려워할 것임
  • Github Actions Runner 코드가 읽기 쉬움
    • 인기 있는 셸/바이너리에 대한 기본 인수를 정의하는 특정 위치가 있음
    • ScriptHandler.cs에는 프로세스 환경, 인수 등을 준비하는 모든 코드가 있음
    • 전체적으로 이 코드의 단순성에 긍정적으로 놀랐음
  • 기본 셸 'bash'를 속여서 어떤 프로그램이든 실행할 수 있음
    • 다른 액션의 독자가 무슨 일이 일어나고 있는지 알고 있는 한, 이는 매우 유용함
    • 쉘 스크립트가 몇 줄에서 시작하여 백 줄 이상의 괴물로 성장한 경험이 있음
    • Python stdlib의 배열과 타입을 포함한 기능을 원했음
  • GitHub 워크플로우 YAML 파일에서 CI 작업을 직접 실행하는 Go 코드를 쉽게 실행할 수 있는 희망을 줌
    • goeval은 아직 파일 입력을 직접 지원하지 않음
    • 쉘 트릭이 필요함
    • 약간의 보일러플레이트가 필요함
    • goeval의 저자임
  • Github CI yaml의 장점이 무엇인지 궁금함
  • CI/CD에서 C를 작성하고 저수준 시스템 작업이라고 부를 수 있게 됨
    • 어셈블리도 작성할 수 있을 것임