当使用toolkit-maven-plugin插件部署应用时,您需提供部署应用的阿里云账号密钥对。目前此插件支持多种配置方式,当存在重复配置的情况时,优先级高的配置方式会覆盖优先级低的配置方式。
优先级从高到低的配置方式如下:
- 命令行指定AccessKey ID和AccessKey Secret参数:您可以通过如下任一方式来指定AccessKey ID和AccessKey Secret。例如:
- 在使用Maven命令打包时,通过
-Daccess_key_id=xx -Daccess_key_secret=xx
来指定。 - 在pom中配置此插件时,配置AccessKey ID或AccessKey Secret参数如下所示:
<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命令打包时,通过
- 命令行指定账号文件(推荐):在使用Maven命令打包时,通过
-Daccess_key_file={账号文件路径
来指定YAML格式的账号文件。例如:access_key_id: abc access_key_secret: 1234567890
- 使用默认的阿里云账号文件:如果没有通过以上两种方式指定账号,那么此插件会使用您曾经配置过的阿里云账号进行应用部署。
- aliyuncli:如果您使用过最新的aliyuncli工具并且配置过阿里云账号,那么阿里云会在您当前Home目录下生成一个
.aliyuncli
目录,并在.aliyuncli
目录下创建credentials
文件来保存您的账号信息。以macOS系统为例,假如系统用户为jack,那么会在/Users/jack/.aliyuncli/credentials
文件中保存如下信息:[default] aliyun_access_key_secret = 1234567890 aliyun_access_key_id = abc
此插件会使用此账号文件作为部署应用的账号。
- aliyun:如果您使用过旧版本的aliyun工具并且配置过阿里云账号,那么aliyun工具会在您当前Home目录下生成一个
.aliyun
目录,并且在.aliyun
目录下创建一个config.json
文件来保存您的账号信息。以macOS系统为例,假如系统用户为jack,那么会在/Users/jack/.aliyun/config.json
文件中保存账号信息,例如:{ "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": "" }
- 系统环境变量:最后,此插件会尝试通过系统环境变量来获取access_key_id和access_key_secret的值。即通过Java代码的
System.getenv("access_key_id")
和System.getenv("access_key_secret")
来获取相应的值。
- aliyuncli:如果您使用过最新的aliyuncli工具并且配置过阿里云账号,那么阿里云会在您当前Home目录下生成一个