From 3be5ce662cc25c2e8fce8d4bcfa42629eede8341 Mon Sep 17 00:00:00 2001 From: Luca Carrogu Date: Fri, 2 Aug 2019 16:08:17 +0200 Subject: [PATCH 1/3] Update CHANGELOG for "Speed up cluster creation" enhancement Signed-off-by: Luca Carrogu --- CHANGELOG.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 3f967702dc..d4fec2bc32 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -16,7 +16,7 @@ x.x.x * Add support for ap-east-1 region (Hong Kong) * Add possibility to specify instance type to use when building custom AMIs with ``pcluster createami`` -* Speed up cluster creation by having compute nodes starting together with master node +* Speed up cluster creation by having compute nodes starting together with master node. **Note** this requires one new IAM permissions in the `ParallelClusterInstancePolicy `_, ``cloudformation:DescribeStackResource`` * Enable ASG CloudWatch metrics for the ASG managing compute nodes * Install Intel MPI 2019u4 on Amazon Linux, Centos 7 and Ubuntu 1604 * Upgrade Elastic Fabric Adapter (EFA) to version 1.4.1 that supports Intel MPI From c75d63d2e44c08369e58d3549111726d3bae8bac Mon Sep 17 00:00:00 2001 From: ddeidda Date: Wed, 31 Jul 2019 15:52:50 +0200 Subject: [PATCH 2/3] parameters check for integration tests Signed-off-by: ddeidda --- tests/integration-tests/test_runner.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tests/integration-tests/test_runner.py b/tests/integration-tests/test_runner.py index b0c668ce64..8d3cd4053a 100644 --- a/tests/integration-tests/test_runner.py +++ b/tests/integration-tests/test_runner.py @@ -352,6 +352,17 @@ def _run_parallel(args): job.join() +def _check_args(args): + # If --cluster is set only one os, scheduler, instance type and region can be provided + if args.cluster: + if len(args.oss) > 1 or len(args.schedulers) > 1 or len(args.instances) > 1 or len(args.regions) > 1: + logger.error( + "when cluster option is specified, you can have a single value for oss, regions, instances " + "and schedulers and you need to make sure they match the cluster specific ones" + ) + exit(1) + + def _run_sequential(args): # Redirect stdout to file if not args.show_output: @@ -369,6 +380,7 @@ def main(): exit(1) args = _init_argparser().parse_args() + _check_args(args) logger.info("Starting tests with parameters {0}".format(args)) _make_logging_dirs(args.output_dir) From 5cfda604cccff7a0366f232fa4f89aa626c8bc4e Mon Sep 17 00:00:00 2001 From: Matteo Fiordarancio Date: Wed, 7 Aug 2019 15:54:51 +0200 Subject: [PATCH 3/3] Fixed a problem in the integration test for networking Signed-off-by: Matteo Fiordarancio --- .../integration-tests/tests/networking/test_networking.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tests/integration-tests/tests/networking/test_networking.py b/tests/integration-tests/tests/networking/test_networking.py index 3120f972b5..8e2b17cb3f 100644 --- a/tests/integration-tests/tests/networking/test_networking.py +++ b/tests/integration-tests/tests/networking/test_networking.py @@ -50,6 +50,7 @@ def vpc_stack(vpc_stacks, region): return vpc_stacks[region] +@pytest.mark.regions(["eu-central-1", "us-gov-east-1", "cn-northwest-1"]) def test_public_network_topology(region, vpc_stack, networking_stack_factory): ec2_client = boto3.client("ec2", region_name=region) vpc_id = vpc_stack.cfn_outputs["VpcId"] @@ -57,6 +58,9 @@ def test_public_network_topology(region, vpc_stack, networking_stack_factory): availability_zone = AVAILABILITY_ZONE_OVERRIDES.get(region, "") internet_gateway_id = vpc_stack.cfn_resources["InternetGateway"] + if isinstance(availability_zone, list): + availability_zone = availability_zone[0] + parameters = _get_cfn_parameters( availability_zone, internet_gateway_id=internet_gateway_id, vpc_id=vpc_id, public_cidr=public_subnet_cidr ) @@ -72,6 +76,7 @@ def test_public_network_topology(region, vpc_stack, networking_stack_factory): ) +@pytest.mark.regions(["eu-central-1", "us-gov-east-1", "cn-northwest-1"]) def test_public_private_network_topology(region, vpc_stack, networking_stack_factory): ec2_client = boto3.client("ec2", region_name=region) vpc_id = vpc_stack.cfn_outputs["VpcId"] @@ -80,6 +85,9 @@ def test_public_private_network_topology(region, vpc_stack, networking_stack_fac availability_zone = AVAILABILITY_ZONE_OVERRIDES.get(region, "") internet_gateway_id = vpc_stack.cfn_resources["InternetGateway"] + if isinstance(availability_zone, list): + availability_zone = availability_zone[0] + parameters = _get_cfn_parameters( availability_zone, internet_gateway_id=internet_gateway_id,