CreateTagsRequest createTagsRequest = new CreateTagsRequest(); createTagsRequest.withResources(ids).withTags(new Tag("Name", NAME)); ec2.createTags(createTagsRequest); tagsDone = true;
ctr.setTags( tags ); ctr.withResources( instanceIds.get( i ) ); client.createTags( ctr );
ctr.setTags( tags ); ctr.withResources( instanceIds.get( i ) ); client.createTags( ctr );
protected void setInstanceName() { ec2.createTags(new CreateTagsRequest(asList(instanceId), asList(new Tag("Name", hostLabel + " started at " + new Date())))); }
protected void setInstanceName() { ec2.createTags(new CreateTagsRequest(newArrayList(instanceId), newArrayList(new Tag("Name", hostLabel + " started at " + new Date())))); }
/** * Sets tags for the specified instance * @param instanceId * @return */ private void setTagsForInstance(String instanceId) { Set<Object> keys = awsProperties.keySet(); List<Tag> tags = new ArrayList<>(); for(Object o : keys) { if(o instanceof String && ((String)o).startsWith("tag")) { String values = (String)awsProperties.get(o); String[] splitValues = values.split(","); String key = splitValues[0]; String value = splitValues[1]; Tag tagToAdd = new Tag(key,value); log.info("Adding tag: " + tagToAdd); tags.add(tagToAdd); } } // Including a hard coded tag here so we can track which resources originate from this plugin Tag nodeTag = new Tag("LaunchSource","SeleniumGridScalerPlugin"); log.info("Adding hard-coded tag: " + nodeTag); tags.add(nodeTag); CreateTagsRequest ctr = new CreateTagsRequest(Arrays.asList(instanceId),tags); ec2Client.createTags(ctr); } }
@Override public void tag(String resourceId, List<Tag> tags) { checkNotBlank(resourceId, "resourceId"); checkNotNull(tags, "tags"); if (CollectionUtils.isEmpty(tags)) { return; } List<String> resources = Collections.singletonList(resourceId); CreateTagsRequest request = new CreateTagsRequest(resources, tags); client.createTags(request); }
tagRequest.setTags(tags); ec2Client.createTags(tagRequest);
/** * Update tags for one all more instance * @param instanceIds * @param tags * @throws Exception */ @Override public void setTagsForInstances(List<String> instanceIds, List<Tag> tags) throws Exception { Preconditions.checkNotNull(instanceIds); Preconditions.checkNotNull(tags); awsRateLimiter.acquire(); OperationStats op = new OperationStats("ec2InstanceStore", "setTagsForInstances"); try { if (tags.size() > 0) { CreateTagsRequest req = new CreateTagsRequest(instanceIds, tags); defaultClient.createTags(req); } op.succeed(); } catch (Exception ex) { op.failed(); throw ex; } } }
private Map<String, Instance> launchEC2Instances(final String instanceType, final RunInstancesRequestBuilder runInstancesRequestBuilder, final boolean createIfNonExistent) { final Map<String, Instance> instances = this.findExistingInstances(instanceType); // If instances is empty, that means we did not find any to reuse so let's create them if (instances.isEmpty() && createIfNonExistent) { final RunInstancesRequest request = runInstancesRequestBuilder.build(); System.out.println(String.format( "Did not find any existing instances, starting new ones with security group: '%s' and subnet: '%s'", request.getSecurityGroups().get(0), request.getSubnetId() == null ? "" : request.getSubnetId())); final RunInstancesResult runInstancesResult = this.ec2client.runInstances(request); for (final Instance instance : runInstancesResult.getReservation().getInstances()) { System.out.println(instance.getInstanceId() + " launched"); instances.put(instance.getInstanceId(), instance); } // Tag instances on creation. Adding the tag enables us to ensure we are terminating a load generator instance. this.ec2client.createTags(new CreateTagsRequest() .withResources(instances.keySet()) .withTags(this.instanceTag)); final DescribeInstancesRequest describeInstancesRequest = new DescribeInstancesRequest().withInstanceIds(instances.keySet()); this.startAllInstances(instances, describeInstancesRequest); } return instances; }
createTagsRequest.withResources(instanceId) .withTags(new Tag("Name", instanceName)); ec2Client.createTags(createTagsRequest);