Skip to content

Latest commit

 

History

History
161 lines (111 loc) · 4.8 KB

copilot-bicep.md

File metadata and controls

161 lines (111 loc) · 4.8 KB

GitHub Copilot 사용하기 – Azure Bicep

사전 준비사항

  • GitHub Copilot은 유료 서비스입니다. 따라서, 사전에 서비스 사용과 관련한 준비가 되어 있어야 합니다. 자세한 내용은 이 문서를 참조하세요.

resources.bicep 만들기

  1. infra/resources.bicep 파일을 생성합니다.

  2. Bing Chat에 아래 프롬프트를 던져 스켈레톤 구조를 생성합니다.

    Could you show me the skeleton structure of Azure Bicep that creates an Azure App Service instance?
    

    만들어진 스켈레톤 워크플로우를 복사해서 infra/resources.bicep 파일에 붙여 넣습니다.

  3. 파일의 맨 위에 아래 주석을 추가합니다.

    // add parameters for name and location that defaults to the resourcegroup's location
  4. 앱 서비스 플랜의 이름을 asplan으로 수정합니다.

  5. 앱 서비스 플랜의 name 속성을 아래 주석을 통해 수정합니다.

    // add name with the prefix of 'asplan-'
  6. 앱 서비스 플랜의 location 속성 값을 location으로 수정합니다.

  7. 앱 서비스의 이름을 appsvc로 수정합니다.

  8. 앱 서비스의 name 속성을 아래 주석을 통해 수정합니다.

    // add name with the prefix of 'appsvc-'
  9. 앱 서비스의 location 속성 값을 location으로 수정합니다.

main.bicep 만들기

  1. infra/main.bicep 파일을 생성합니다.

  2. Bing Chat에 아래 프롬프트를 던져 스켈레톤 구조를 생성합니다.

    Could you show me the skeleton structure of Azure Bicep that creates a resource group and calls a module?
    

    만들어진 스켈레톤 워크플로우를 복사해서 infra/main.bicep 파일에 붙여 넣습니다.

  3. 파일의 맨 위에 아래 주석을 추가합니다.

    // add target scope to subscription
  4. 그 다음에 아래 주석을 추가합니다.

    // add parameters for name and location that defaults to koreacentral
  5. 그 다음에 아래 주석을 추가합니다.

    // add name with the prefix of 'rg-'
  6. 모듈 호출하는 부분을 아래와 같이 수정합니다.

    module appsvc './resources.bicep' = {
      name: 'AppService'
      scope: rg
      params: {
        name: name
        location: location
      }
    }
  7. infra/main.parameters.json 파일을 생성하고 아래 내용을 입력합니다.

    {
      "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {
        "name": {
          "value": "${AZURE_ENV_NAME}"
        },
        "location": {
          "value": "${AZURE_LOCATION}"
        }
      }
    }

Azure Dev CLI 구성하기

  1. 터미널에서 아래 명령어를 입력합니다.

    azd auth login --use-device-code=false

    새 웹 브라우저 탭이 나타나면서 404 에러가 보인다면 주소창의 http://localhost...로 시작하는 주소를 복사해서 새 터미널 창에 curl 명령어와 함께 붙여넣습니다. 이 때 새 터미널 창을 bash 터미널로 열어서 잘 실행이 안 된다면, zsh 터미널로 열어서 해 보세요.

  2. 아래 명령어를 차례로 입력합니다.

    # Set AZURE_ENV_NAME
    AZURE_ENV_NAME="swm$RANDOM"
    
    # Get AZURE_ENV_NAME
    echo $AZURE_ENV_NAME
  3. 아래 명령어를 입력해서 Azure Dev CLI 구성을 시작합니다.

    azd init
    • "Select a project template": Empty Template
    • "Please enter a new environment name": swm{{숫자}} 👈 이 값은 앞서 echo $AZURE_ENV_NAME으로 확인한 값입니다.
  4. azure.yaml 파일 및 .azure 디렉토리가 만들어 진 것을 확인합니다.

  5. azure.yaml 파일을 열어 아래와 같이 내용을 수정합니다.

    # yaml-language-server: $schema=https://raw.githubusercontent.com/Azure/azure-dev/main/schemas/v1.0/azure.yaml.json
    
    name: swm-codespace-copilot
    
    infra:
      provider: "bicep"
      path: "infra"
      module: "main"
    
    pipeline:
      provider: "github"
  6. 아래 명령어를 입력해서 앞서 작성했던 애저 Bicep 파일을 실행시킵니다.

    azd up
    • "Please select an Azure Subscription to use": 자신의 애저 구독 선택
    • "Please select an Azure location to use": Korea Central 선택

👈 이전: GitHub 코파일럿 – ASP.NET Core Web API 앱 만들기 👉 다음: GitHub 코파일럿 – GitHub 액션 워크플로우 만들기