AWS CodeBuildのビルド成果物をCodeArtifactにMavenで登録する
2373 ワード
目的
CodeCommit上のJavaソースをCodeBuildでビルドして生成されたjarをCodeArtifactに登録します。CodeCommit、CodeBuildおよびCodeArtifactは設定済とします。
ソース
buildspec.yml
pom.xml
settings.xml
src
buildspec.yml
version: 0.2
phases:
install: {}
pre_build:
commands:
- export CODEARTIFACT_TOKEN=$(aws codeartifact get-authorization-token --domain ${CODEARTIFACT_DOMAIN} --domain-owner ${CODEARTIFACT_DOMAIN_OWNER} --query authorizationToken --output text)
build:
commands:
- cp settings.xml ~/.m2/
- mvn deploy
post_build: {}
pom.xml
<distributionManagement>
<repository>
<id>codeartifact</id>
<url>${env.CODEARTIFACT_URL}</url>
</repository>
</distributionManagement>
settings.xml
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 https://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>codeartifact</id>
<username>aws</username>
<password>${env.CODEARTIFACT_TOKEN}</password>
</server>
</servers>
</settings>
CodeBuild
buildspec.yml
pom.xml
settings.xml
src
version: 0.2
phases:
install: {}
pre_build:
commands:
- export CODEARTIFACT_TOKEN=$(aws codeartifact get-authorization-token --domain ${CODEARTIFACT_DOMAIN} --domain-owner ${CODEARTIFACT_DOMAIN_OWNER} --query authorizationToken --output text)
build:
commands:
- cp settings.xml ~/.m2/
- mvn deploy
post_build: {}
<distributionManagement>
<repository>
<id>codeartifact</id>
<url>${env.CODEARTIFACT_URL}</url>
</repository>
</distributionManagement>
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 https://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>codeartifact</id>
<username>aws</username>
<password>${env.CODEARTIFACT_TOKEN}</password>
</server>
</servers>
</settings>
環境変数をビルドプロジェクトに設定します。
変数 | 値 |
---|---|
CODEARTIFACT_DOMAIN | CodeArtifactリポジトリ名 |
CODEARTIFACT_DOMAIN_OWNER | CodeArtifactドメインオーナー |
CODEARTIFACT_URL | CodeArtifactリポジトリURL |
これでビルドを実行するとCodeArtifactに登録されます。
Author And Source
この問題について(AWS CodeBuildのビルド成果物をCodeArtifactにMavenで登録する), 我々は、より多くの情報をここで見つけました https://qiita.com/teruq/items/7aaaab503e44276fe240著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .