Swift 패키지 사용 및 게시 - CodeArtifact

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Swift 패키지 사용 및 게시

Swift 패키지 사용: CodeArtifact

저장소에서 Swift 패키지를 사용하려면 다음 절차를 사용하십시오. AWS CodeArtifact

리포지토리에서 Swift 패키지를 사용하려면 CodeArtifact
  1. 아직 구성하지 않았다면 다음 단계에 따라 적절한 자격 증명이 있는 CodeArtifact 리포지토리를 사용하도록 Swift Package Manager를 구성하십시오. Swift 패키지 관리자를 다음과 같이 구성하십시오. CodeArtifact

    참고

    생성된 권한 부여 토큰은 12시간 동안 유효합니다. 토큰이 생성된 후 12시간이 경과한 경우 새 토큰을 생성해야 합니다.

  2. 애플리케이션 프로젝트 폴더의 Package.swift 파일을 편집하여 프로젝트에서 사용할 패키지 종속성을 업데이트합니다.

    1. Package.swift 파일에 dependencies 섹션이 없는 경우 해당 섹션을 추가합니다.

    2. Package.swift 파일의 dependencies 섹션에서 패키지 식별자를 추가하여 사용하려는 패키지를 추가합니다. 패키지 식별자는 범위와 패키지 이름을 마침표로 구분하여 구성됩니다. 예제는 이후 단계 다음에 나오는 코드 스니펫을 참조하세요.

      작은 정보

      CodeArtifact 콘솔을 사용하여 패키지 식별자를 찾을 수 있습니다. 사용하려는 특정 패키지 버전을 찾고 패키지 버전 페이지의 설치 단축키 지침을 참조하세요.

    3. Package.swift 파일에 targets 섹션이 없는 경우 해당 섹션을 추가합니다.

    4. targets 섹션에서 종속성을 사용해야 하는 대상을 추가합니다.

      다음 스니펫은 Package.swift 파일의 구성된 dependencies 섹션과 targets 섹션을 보여 주는 예제 스니펫입니다.

      ... ], dependencies: [ .package(id: "my_scope.package_name", from: "1.0.0") ], targets: [ .target( name: "MyApp", dependencies: ["package_name"] ),... ], ...
  3. 이제 모든 구성이 완료되었으므로 다음 명령을 사용하여 패키지 종속성을 CodeArtifact 다운로드합니다.

    swift package resolve

Xcode에서 Swift 패키지 사용 CodeArtifact

Xcode의 CodeArtifact 저장소에서 Swift 패키지를 사용하려면 다음 절차를 사용하십시오.

Xcode의 리포지토리에서 Swift 패키지를 사용하려면 CodeArtifact
  1. 아직 구성하지 않았다면 다음 단계에 따라 적절한 자격 증명이 있는 CodeArtifact 리포지토리를 사용하도록 Swift Package Manager를 구성하십시오. Swift 패키지 관리자를 다음과 같이 구성하십시오. CodeArtifact

    참고

    생성된 권한 부여 토큰은 12시간 동안 유효합니다. 토큰이 생성된 후 12시간이 경과한 경우 새 토큰을 생성해야 합니다.

  2. 패키지를 Xcode의 프로젝트에 종속 항목으로 추가합니다.

    1. 파일 > 패키지 추가를 선택합니다.

    2. 검색 창을 사용하여 패키지를 검색합니다. 검색은 package_scope.package_name 형식으로 합니다.

    3. 패키지를 찾으면 패키지를 선택한 다음 패키지 저장을 선택합니다.

    4. 패키지가 확인되면 종속 항목으로 추가할 패키지 제품을 선택한 다음 패키지 추가를 선택합니다.

Xcode에서 CodeArtifact 리포지토리를 사용하는 데 문제가 발생하는 경우 일반적인 문제 및 가능한 해결 방법을 Swift 문제 해결 참조하십시오.

Swift 패키지를 에 게시하기 CodeArtifact

CodeArtifact Swift 5.9 이상을 사용하고 swift package-registry publish 명령을 사용하여 Swift 패키지를 게시하는 것이 좋습니다. 이전 버전을 사용하는 경우 Curl 명령을 사용하여 Swift 패키지를 게시해야 합니다. CodeArtifact

명령을 사용하여 CodeArtifact 패키지를 게시합니다. swift package-registry publish

Swift 5.9 이상에서는 다음 절차를 사용하여 Swift 패키지 관리자를 사용하여 Swift 패키지를 CodeArtifact 저장소에 게시할 수 있습니다.

  1. 아직 구성하지 않았다면 다음 단계에 따라 적절한 자격 증명이 있는 CodeArtifact 리포지토리를 사용하도록 Swift Package Manager를 구성하십시오. Swift 패키지 관리자를 다음과 같이 구성하십시오. CodeArtifact

    참고

    생성된 권한 부여 토큰은 12시간 동안 유효합니다. 토큰이 생성된 후 12시간이 경과한 경우 새 토큰을 생성해야 합니다.

  2. 패키지의 Package.swift 파일이 포함된 Swift 프로젝트 디렉터리로 이동합니다.

  3. 다음 swift package-registry publish 명령을 실행하여 패키지를 게시합니다. 이 명령은 패키지 소스 아카이브를 만들어 리포지토리에 게시합니다. CodeArtifact

    swift package-registry publish packageScope.packageName packageVersion

    예:

    swift package-registry publish myScope.myPackage 1.0.0
  4. 패키지가 게시되었고 리포지토리에 존재하는지 여부는 콘솔에서 확인하거나 다음과 같은 aws codeartifact list-packages 명령을 사용하여 확인할 수 있습니다.

    aws codeartifact list-packages --domain my_domain --repository my_repo

    다음과 같이 aws codeartifact list-package-versions 명령을 사용하여 패키지의 단일 버전을 나열할 수 있습니다.

    aws codeartifact list-package-versions --domain my_domain --repository my_repo \ --format swift --namespace my_scope --package package_name

Curl을 사용하여 CodeArtifact 패키지를 게시합니다.

Swift 5.9 이상과 함께 제공되는 swift package-registry publish 명령을 사용하는 것이 좋지만 Curl을 사용하여 Swift 패키지를 게시할 수도 있습니다. CodeArtifact

Curl을 사용하여 Swift 패키지를 저장소에 게시하려면 다음 절차를 사용하십시오. AWS CodeArtifact

  1. 아직 업데이트하지 않았다면 Swift 패키지 관리자를 다음과 같이 구성하십시오. CodeArtifact 의 단계에 따라 CODEARTIFACT_AUTH_TOKENCODEARTIFACT_REPO 환경 변수를 만들고 업데이트합니다.

    참고

    권한 부여 토큰은 12시간 동안 유효합니다. CODEARTIFACT_AUTH_TOKEN 환경 변수를 생성한 후 12시간이 경과한 경우 새 보안 인증으로 환경 변수를 새로 고쳐야 합니다.

  2. 먼저 Swift 패키지를 생성하지 않은 경우 다음 명령을 실행하여 생성할 수 있습니다.

    mkdir testDir && cd testDir swift package init git init . swift package archive-source
  3. 다음 Curl 명령을 사용하여 Swift 패키지를 다음 위치에 게시하십시오. CodeArtifact

    macOS and Linux
    curl -X PUT --user "aws:$CODEARTIFACT_AUTH_TOKEN" \ -H "Accept: application/vnd.swift.registry.v1+json" \ -F source-archive="@test_dir_package_name.zip" \ "${CODEARTIFACT_REPO}my_scope/package_name/packageVersion"
    Windows
    curl -X PUT --user "aws:%CODEARTIFACT_AUTH_TOKEN%" \ -H "Accept: application/vnd.swift.registry.v1+json" \ -F source-archive="@test_dir_package_name.zip" \ "%CODEARTIFACT_REPO%my_scope/package_name/packageVersion"
  4. 패키지가 게시되었고 리포지토리에 존재하는지 여부는 콘솔에서 확인하거나 다음과 같은 aws codeartifact list-packages 명령을 사용하여 확인할 수 있습니다.

    aws codeartifact list-packages --domain my_domain --repository my_repo

    다음과 같이 aws codeartifact list-package-versions 명령을 사용하여 패키지의 단일 버전을 나열할 수 있습니다.

    aws codeartifact list-package-versions --domain my_domain --repository my_repo \ --format swift --namespace my_scope --package package_name

에서 Swift 패키지를 가져와서 다시 게시하는 중 GitHub CodeArtifact

다음 절차를 사용하여 저장소에서 GitHub Swift 패키지를 가져와서 저장소에 다시 게시하십시오. CodeArtifact

에서 Swift 패키지를 가져와서 다시 게시하려면 GitHub CodeArtifact
  1. 아직 구성하지 않았다면 다음 단계에 따라 적절한 자격 증명이 있는 CodeArtifact 리포지토리를 사용하도록 Swift Package Manager를 구성하십시오. Swift 패키지 관리자를 다음과 같이 구성하십시오. CodeArtifact

    참고

    생성된 권한 부여 토큰은 12시간 동안 유효합니다. 토큰이 생성된 후 12시간이 경과한 경우 새 토큰을 생성해야 합니다.

  2. 다음 git clone 명령을 사용하여 가져오고 다시 게시하려는 Swift 패키지의 git 저장소를 복제합니다. GitHub 리포지토리 복제에 대한 자세한 내용은 문서의 리포지토리 복제를 참조하십시오. GitHub

    git clone repoURL
  3. 방금 복제한 리포지토리로 이동합니다.

    cd repoName
  4. 패키지를 만들어 에 게시하십시오. CodeArtifact

    1. 권장: Swift 5.9 이상을 사용하는 경우 다음 swift package-registry publish 명령을 사용하여 패키지를 만들고 구성된 CodeArtifact 저장소에 게시할 수 있습니다.

      swift package-registry publish packageScope.packageName versionNumber

      예:

      swift package-registry publish myScope.myPackage 1.0.0
    2. 5.9 이전의 Swift 버전을 사용하는 경우 swift archive-source 명령을 사용하여 패키지를 생성한 다음 Curl 명령을 사용하여 패키지를 게시해야 합니다.

      1. CODEARTIFACT_AUTH_TOKENCODEARTIFACT_REPO 환경 변수를 구성하지 않았거나 구성한 지 12시간이 넘었다면 로그인 명령 없이 Swift 구성의 다음 단계를 따르세요.

      2. swift package archive-source 명령을 사용하여 Swift 패키지 생성:

        swift package archive-source

        성공하면 명령줄에 Created package_name.zip이 표시됩니다.

      3. 다음 Curl 명령을 사용하여 Swift 패키지를 다음 위치에 게시하십시오. CodeArtifact

        macOS and Linux
        curl -X PUT --user "aws:$CODEARTIFACT_AUTH_TOKEN" \ -H "Accept: application/vnd.swift.registry.v1+json" \ -F source-archive="@package_name.zip" \ "${CODEARTIFACT_REPO}my_scope/package_name/packageVersion"
        Windows
        curl -X PUT --user "aws:%CODEARTIFACT_AUTH_TOKEN%" \ -H "Accept: application/vnd.swift.registry.v1+json" \ -F source-archive="@package_name.zip" \ "%CODEARTIFACT_REPO%my_scope/package_name/packageVersion"
  5. 패키지가 게시되었고 리포지토리에 존재하는지 여부는 콘솔에서 확인하거나 다음과 같은 aws codeartifact list-packages 명령을 사용하여 확인할 수 있습니다.

    aws codeartifact list-packages --domain my_domain --repository my_repo

    다음과 같이 aws codeartifact list-package-versions 명령을 사용하여 패키지의 단일 버전을 나열할 수 있습니다.

    aws codeartifact list-package-versions --domain my_domain --repository my_repo \ --format swift --namespace my_scope --package package_name