mirror of https://github.com/apache/jclouds.git
8df58654b8
- add image publishers filter to AzureComputeServiceLiveTest - add parser module to provider - fix create network card interface - fix checkstyle |
||
---|---|---|
.. | ||
src | ||
README.md | ||
pom.xml |
README.md
jclouds Labs - Azure Compute ARM Provider
Build status for azurecomputearm module:
Setting Up Test Credentials
Create a Service Principal
Install and configure Azure CLI following these steps.
Using the Azure CLI, run the following commands to create a service principal
# Set mode to ARM
azure config mode arm
# Enter your Microsoft account credentials when prompted
azure login
# Set current subscription to create a service principal
azure account set <Subscription-id>
# Create an AAD application with your information.
azure ad app create --name <name> --password <password> --home-page <home-page> --identifier-uris <identifier-uris>
# For example: azure ad app create --name "jcloudsarm" --password abcd --home-page "https://jcloudsarm" --identifier-uris "https://jcloudsarm"
# Output will include a value for `Application Id`, which will be used for the live tests
# Create a Service Principal
azure ad sp create <Application-id>
# Output will include a value for `Object Id`
Run the following commands to assign roles to the service principal
# Assign roles for this service principal
azure role assignment create --objectId <Object-id> -o Contributor -c /subscriptions/<Subscription-id>/
Verify service principal
azure login -u <Application-id> -p <password> --service-principal --tenant <Tenant-id>
Run Live Tests
Use the following to run one live test:
mvn -Dtest=<name of the live test> \
-Dtest.azurecompute-arm.identity="<Application-id>" \
-Dtest.azurecompute-arm.credential="<password>" \
-Dtest.azurecompute-arm.endpoint="https://management.azure.com/subscriptions/<Subscription-id>" \
-Dtest.oauth.endpoint="https://login.microsoftonline.com/<Tenant-id>/oauth2/token" test
Use the following to run all the live tests:
mvn clean verify -Plive \
-Dtest.azurecompute-arm.identity="<Application-id>"" \
-Dtest.azurecompute-arm.credential="<password>"" \
-Dtest.azurecompute-arm.endpoint="https://management.azure.com/subscriptions/<Subscription-id>"" \
-Dtest.oauth.endpoint=https://login.microsoftonline.com/<Tenant-id>/oauth2/token
How to use it
Azure Compute ARM provider works exactly as any other jclouds provider. Notice that as Azure supports dozens of locations, operations like listImages can be really time-consuming. To limit the scope of such operations there are some additional properties you may want to use:
jclouds.azurecompute.arm.publishers
which is by default Canonical,RedHat
and
jclouds.regions
which is by default null
. If you want to target only the north europe
region, you can use
jclouds.regions="northeurope"