Exemplo n.º 1
0
        public async Task SnapshotServerTest()
        {
            var server = await _testData.CreateServer();

            await server.WaitUntilActiveAsync();

            Trace.WriteLine($"Created server named: {server.Name}");

            var request = new SnapshotServerRequest(server.Name + "-SNAPSHOT")
            {
                Metadata =
                {
                    ["category"] = "ci"
                }
            };

            Trace.WriteLine("Taking a snapshot of the server...");
            var image = await server.SnapshotAsync(request);

            _testData.Register(image);
            await image.WaitUntilActiveAsync();

            Assert.NotNull(image);
            Assert.Equal(request.Name, image.Name);
            Assert.True(image.Metadata["category"] == "ci");
        }
Exemplo n.º 2
0
        public async Task FindSnapshotsTest()
        {
            Trace.WriteLine("Creating a test server...");
            var server = await _testData.CreateServer();

            await server.WaitUntilActiveAsync();

            Trace.WriteLine("Snapshotting server...");
            var snapshot = await server.SnapshotAsync(new SnapshotServerRequest(server.Name + "SNAPSHOT"));

            _testData.Register(snapshot);

            Trace.WriteLine("Getting snapshot details...");
            var results = await _compute.ListImagesAsync(new ImageListOptions { Type = ImageType.Snapshot });

            Assert.NotNull(results);
            Assert.All(results, x => Assert.Equal(ImageType.Snapshot, x.Type));
            Assert.Contains(results, image => image.Id == snapshot.Id);
        }
Exemplo n.º 3
0
        public async Task AttachVolumeTest()
        {
            var server = await _testData.CreateServer();

            await server.WaitUntilActiveAsync();

            var volume = await _testData.CreateVolume();

            await volume.WaitUntilAvailableAsync();

            var serverVolume = await server.AttachVolumeAsync(new ServerVolumeDefinition(volume.Id));

            _testData.Register(serverVolume);
            await volume.WaitForStatusAsync(VolumeStatus.InUse);

            volume = await _compute.GetVolumeAsync(volume.Id);

            serverVolume = volume.Attachments.FirstOrDefault();

            Assert.NotNull(serverVolume);
            Assert.Equal(server.Id, serverVolume.ServerId);
            Assert.Equal(volume.Id, serverVolume.VolumeId);
        }
Exemplo n.º 4
0
        public async Task ImportKeyPairTest()
        {
            var definition = new KeyPairDefinition(TestData.GenerateName(), "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDrBzodZLiWO6nIGGy9ZOVeFhbF6EaG8HUqrknNVKynH6+Hc5ToY71gmeQGJ7XZTAlyKKdFmPhNPCQCYqFQxjPKD3xTIAoGChlRHfkjYwjefbqxFswi9S0Fi3Lq8mawUVuPmPnuTr8KhL8ibnBbAxZnrcfTKBIoxhU+kN56CCmLnkJc5ouG/UcF+UpqUso45pYRf0YWANyyuafyCmj6NiDxMCGy/vnKUBLzMg8wQ01xGSGOfyGDIwuTFZpoPzjeqEV8oUGvxYt9Xyzh/pPKoOz1cz0wBDaVDpucTz3UEq65F9HhCmdwwjso8MP1K46LkM2JNQWQ0eTotqFvUJEoP2ff Generated-by-Nova");

            Trace.WriteLine($"Importing keypair named: {definition.Name}");
            var keypair = await _compute.ImportKeyPairAsync(definition);

            _testData.Register(keypair);

            Trace.WriteLine("Verifying keypair matches requested definition...");
            Assert.NotNull(keypair);
            Assert.Equal(definition.Name, keypair.Name);
            Assert.NotNull(keypair.Fingerprint);
        }