연습 - GitHub Actions를 사용하여 업데이트 자동화

완료됨

GitHub Actions는 Azure SQL Database를 포함한 다양한 서비스에 대한 CI/CD 파이프라인을 자동화하는 방법입니다.

버스 타기 시나리오에서는 데이터베이스에서 애플리케이션의 기반을 구축합니다. 데이터베이스를 업데이트하거나 동일한 구성을 새 데이터베이스에 자동으로 배포하려는 경우 GitHub Actions를 사용할 수 있습니다.

업데이트를 자동화하려면 GitHub 비밀과 yaml 파일을 구성해야 합니다. 모두 설정되면 푸시되는 새 커밋에서 워크플로를 트리거하여 Azure SQL Database 또는 다른 서비스를 업데이트합니다.

GitHub를 사용하여 안전하게 비밀 구성

GitHub 비밀은 GitHub에 비밀, 키, 기타 중요한 정보를 안전하게 저장하는 방법을 제공합니다. 이 섹션에서는 Azure SQL Database 연결 문자열을 포함하는 새 GitHub 비밀을 만듭니다.

  1. 텍스트 파일, 메모장 또는 문서에서 Azure SQL Database의 연결 문자열을 확인합니다. Server=<server-name>.database.windows.net,1433;Initial Catalog=bus-db;User Id=cloudadmin;Password=<your-password>;Connection Timeout=30;과 같이 표시됩니다.

  2. GitHub에서 이 모듈에 대한 리포지토리로 이동합니다(로그인되어 있는지 확인). https://github.com/<your-git-username>/serverless-full-stack-apps-azure-sql과 같이 표시됩니다.

  3. 리포지토리의 설정을 선택합니다.

  4. 비밀 및 변수>작업>새 리포지토리 비밀을 선택하고 다음 정보를 입력합니다.

    1. ‘이름’: AZURE_SQL_CONNECTION_STRING
    2. 비밀: 이전 단계의 연결 문자열
  5. 비밀 추가를 선택합니다.

GitHub Actions에 대한 yaml 파일 구성

코드 리포지토리에 사용할 수 있는 여러 가지 템플릿 yaml 파일이 있습니다. 이 모듈에서는 Azure SQL Database에 대한 워크플로 파일만 사용합니다.

  1. Visual Studio Code에서 작업 표시줄에서 탐색기 아이콘을 선택하여 리포지토리 파일을 봅니다. 표시되지 않으면 파일>폴더 열기를 선택하고 리포지토리를 복제한 위치로 이동합니다.

  2. .github\workflows 폴더에서 azuresqldatabase.yml.template의 이름을 azuresqldatabase.yml로 바꿉니다.

  3. 템플릿을 검토하고 워크플로에서 수행할 작업 및 데이터베이스를 업데이트하는 방법을 이해합니다.

Visual Studio Code 및 GitHub를 사용하여 커밋 푸시 및 결과 모니터링

GitHub 비밀과 워크플로 파일을 구성했으므로 커밋을 푸시하고 워크플로를 관찰할 수 있습니다.

  1. 작업 표시줄에서 소스 제어 아이콘을 선택합니다.

  2. ‘메시지’ 상자에 “데이터베이스 yaml 사용”이나 다른 메시지를 입력합니다.

  3. 확인 표시를 선택합니다. 파일을 준비하지 않고 커밋하는 것에 대한 경고가 표시되면 [예]를 선택하여 변경된 파일을 스테이징할 수 있습니다.

  4. ...>푸시를 선택합니다. 그러면 GitHub에서 호스트되는 리포지토리에 업데이트가 푸시되고 GitHub Actions가 시작됩니다.

    중요

    로그인하라는 메시지가 표시되면 GitHub 사용자 이름을 사용하고 개인용 액세스 토큰을 가져와 GitHub 암호 대신 제공해야 합니다. https://github.com/settings/tokens/new로 이동하여 이 작업을 수행할 수 있습니다. VSCode라는 메모를 추가하고, 모든 확인란을 선택하고, 토큰 생성을 선택합니다. 토큰 텍스트를 복사하여 안전한 위치에 저장합니다. Visual Studio Code로 돌아가서 토큰을 암호/토큰으로 사용하여 GitHub에 로그인합니다.

  5. 이 모듈에 대한 GitHub 리포지토리로 이동하여 작업을 선택합니다. GitHub Actions를 사용하면 리포지토리에서 바로 소프트웨어 개발 워크플로를 자동화, 사용자 지정 및 실행할 수 있습니다.

  6. 실행 중이거나 완료된 워크플로의 콘텐츠를 관찰합니다. Azure SQL 작업(Action)이 리포지토리의 .dacpac 파일을 사용하여 데이터베이스의 최종 상태를 Azure SQL Database에 배포하는 방법을 확인합니다.