예제 #1
0
        public async Task <IActionResult> DeleteDeploymentAsync
            ([FromRoute] string deployName,
            [FromRoute] string tenantName,
            [FromRoute] string groupName)
        {
            var deployController = new MTADeployController(deployName, tenantName, groupName);
            var respondeModel    = await deployController.DeleteDeploymentAsync(_k8sClient);

            if (respondeModel != null)
            {
                return(BadRequest(respondeModel));
            }

            return(NoContent());
        }
예제 #2
0
        public async Task <IActionResult> GetDeploymentAsync
            ([FromRoute] string deployName,
            [FromRoute] string tenantName,
            [FromRoute] string groupName)
        {
            var deployController = new MTADeployController(deployName, tenantName, groupName);
            var respondeModel    = await deployController.ReadDeploymentAsync(_k8sClient);

            if (respondeModel.Item2 != null)
            {
                return(BadRequest(respondeModel.Item2));
            }

            return(Ok(respondeModel.Item1));
        }
예제 #3
0
        public async Task <IActionResult> PatchDeploymentAsync
            ([FromBody] MTADeployModel patchBody,
            [FromRoute] string deployName,
            [FromRoute] string tenantName,
            [FromRoute] string groupName)
        {
            var deployController = new MTADeployController(deployName, tenantName, groupName);
            var respondeModel    = await deployController.PatchDeploymentAsync(_k8sClient, patchBody);

            if (respondeModel != null)
            {
                return(BadRequest(respondeModel));
            }

            return(Ok(respondeModel.Item1));
        }
예제 #4
0
        public async Task <IActionResult> CreateDeploymentAsync
            ([FromBody] MTADeployModel deployBody,
            [FromRoute] string deployName,
            [FromRoute] string tenantName,
            [FromRoute] string groupName)
        {
            var path            = string.Concat(GetTemplatesPath(), "/template-deploy.yaml");
            var deploymentsList = await Yaml.LoadAllFromFileAsync(path);

            var yamlBody         = deploymentsList[0] as V1Deployment;
            var deployController = new MTADeployController(deployName, tenantName, groupName);
            var respondeModel    = await deployController.CreateDeploymentAsync
                                       (_k8sClient, yamlBody, deployBody);

            if (respondeModel.Item2 != null)
            {
                return(BadRequest(respondeModel.Item2));
            }

            return(Created(Url.RouteUrl("CreateDeployment", new { deployName, groupName }),
                           respondeModel.Item1));
        }