Esempio n. 1
0
        public override void Run()
        {
            Console.WriteInfoLine("Removing a database...");
            base.Run();
            if (!Console.Confirm())
            {
                return;
            }

            using (var client = new DockerService())
            {
                var container = client.GetContainer(true, $"^.*{ContainerKey}-{User}-{Name}$");

                if (container == null)
                {
                    Console.WriteErrorLine($"A {ContainerKey} database named {Name} does not exist for user {User}");
                    return;
                }
                if (container.State == "running")
                {
                    client.StopContainer(container.ID);
                }
                client.RemoveContainer(container.ID);
            }

            Console.WriteSuccessLine("The database was successfully removed.");
        }
Esempio n. 2
0
 public override void Run()
 {
     Console.WriteInfoLine("Creating a new database...");
     base.Run();
     new IdentityService().CheckUserExists(User);
     using (var client = new DockerService())
     {
         var container = client.GetContainer(true, $"^.*{ContainerKey}-{User}-{Name}$");
         if (container != null)
         {
             Console.WriteErrorLine($"A {ContainerKey} database named {Name} already exists for the user {User}. You cannot ask for a new one.");
             return;
         }
         client.CreateContainer("httpd", $"{ContainerKey}-{User}-{Name}");
         Console.WriteSuccessLine("The database was successfully created.");
     }
 }
Esempio n. 3
0
        public override void Run()
        {
            Console.WriteInfoLine("Stopping a database...");
            base.Run();

            using (var client = new DockerService())
            {
                var container = client.GetContainer(true, $"^.*{ContainerKey}-{User}-{Name}$");

                if (container == null)
                {
                    Console.WriteErrorLine($"A {ContainerKey} database named {Name} does not exist for user {User}");
                    return;
                }
                if (container.State != "running")
                {
                    Console.WriteErrorLine($"A {ContainerKey} database named {Name} exists for user {User}, but its status is not equal to running");
                    return;
                }

                client.StopContainer(container.ID);
                Console.WriteSuccessLine("The database was successfully stopped.");
            }
        }