當(dāng)使用toolkit-maven-plugin插件部署應(yīng)用時(shí),您需提供部署應(yīng)用的阿里云賬號(hào)密鑰對(duì)。目前此插件支持多種配置方式,當(dāng)存在重復(fù)配置的情況時(shí),優(yōu)先級(jí)高的配置方式會(huì)覆蓋優(yōu)先級(jí)低的配置方式。
優(yōu)先級(jí)從高到低的配置方式如下:
- 命令行指定AccessKey ID和AccessKey Secret參數(shù):您可以通過(guò)如下任一方式來(lái)指定AccessKey ID和AccessKey Secret。例如:
- 在使用Maven命令打包時(shí),通過(guò)
-Daccess_key_id=xx -Daccess_key_secret=xx
來(lái)指定。 - 在pom中配置此插件時(shí),配置AccessKey ID或AccessKey Secret參數(shù)如下所示:
<plugin> <groupId>com.alibaba.cloud</groupId> <artifactId>toolkit-maven-plugin</artifactId> <version>1.0.3</version> <configuration> <accessKeyId>abc</accessKeyId> <accessKeySecret>1234567890</accessKeySecret> </configuration> </plugin>
- 在使用Maven命令打包時(shí),通過(guò)
- 命令行指定賬號(hào)文件(推薦):在使用Maven命令打包時(shí),通過(guò)
-Daccess_key_file={賬號(hào)文件路徑
來(lái)指定YAML格式的賬號(hào)文件。例如:access_key_id: abc access_key_secret: 1234567890
- 使用默認(rèn)的阿里云賬號(hào)文件:如果沒(méi)有通過(guò)以上兩種方式指定賬號(hào),那么此插件會(huì)使用您曾經(jīng)配置過(guò)的阿里云賬號(hào)進(jìn)行應(yīng)用部署。
- aliyuncli:如果您使用過(guò)最新的aliyuncli工具并且配置過(guò)阿里云賬號(hào),那么阿里云會(huì)在您當(dāng)前Home目錄下生成一個(gè)
.aliyuncli
目錄,并在.aliyuncli
目錄下創(chuàng)建credentials
文件來(lái)保存您的賬號(hào)信息。以macOS系統(tǒng)為例,假如系統(tǒng)用戶為jack,那么會(huì)在/Users/jack/.aliyuncli/credentials
文件中保存如下信息:[default] aliyun_access_key_secret = 1234567890 aliyun_access_key_id = abc
此插件會(huì)使用此賬號(hào)文件作為部署應(yīng)用的賬號(hào)。
- aliyun:如果您使用過(guò)舊版本的aliyun工具并且配置過(guò)阿里云賬號(hào),那么aliyun工具會(huì)在您當(dāng)前Home目錄下生成一個(gè)
.aliyun
目錄,并且在.aliyun
目錄下創(chuàng)建一個(gè)config.json
文件來(lái)保存您的賬號(hào)信息。以macOS系統(tǒng)為例,假如系統(tǒng)用戶為jack,那么會(huì)在/Users/jack/.aliyun/config.json
文件中保存賬號(hào)信息,例如:{ "current": "", "profiles": [{ "name": "default", "mode": "AK", "access_key_id": "", "access_key_secret": "", "sts_token": "", "ram_role_name": "", "ram_role_arn": "", "ram_session_name": "", "private_key": "", "key_pair_name": "", "expired_seconds": 0, "verified": "", "region_id": "", "output_format": "json", "language": "en", "site": "", "retry_timeout": 0, "retry_count": 0 }, { "name": "", "mode": "AK", "access_key_id": "abc", "access_key_secret": "xxx", "sts_token": "", "ram_role_name": "", "ram_role_arn": "", "ram_session_name": "", "private_key": "", "key_pair_name": "", "expired_seconds": 0, "verified": "", "region_id": "cn-hangzhou", "output_format": "json", "language": "en", "site": "", "retry_timeout": 0, "retry_count": 0 }], "meta_path": "" }
- 系統(tǒng)環(huán)境變量:最后,此插件會(huì)嘗試通過(guò)系統(tǒng)環(huán)境變量來(lái)獲取access_key_id和access_key_secret的值。即通過(guò)Java代碼的
System.getenv("access_key_id")
和System.getenv("access_key_secret")
來(lái)獲取相應(yīng)的值。
- aliyuncli:如果您使用過(guò)最新的aliyuncli工具并且配置過(guò)阿里云賬號(hào),那么阿里云會(huì)在您當(dāng)前Home目錄下生成一個(gè)