Compare commits
4 Commits
main
...
pm-custom-
Author | SHA1 | Date | |
---|---|---|---|
74b0792d00 | |||
a085ca8756 | |||
27a6470ad9 | |||
53a96defe0 |
@ -54,6 +54,7 @@ def process_app_deployment_request(
|
|||||||
deployment_record_namespace,
|
deployment_record_namespace,
|
||||||
dns_record_namespace,
|
dns_record_namespace,
|
||||||
default_dns_suffix,
|
default_dns_suffix,
|
||||||
|
dns_value,
|
||||||
deployment_parent_dir,
|
deployment_parent_dir,
|
||||||
kube_config,
|
kube_config,
|
||||||
image_registry,
|
image_registry,
|
||||||
@ -171,6 +172,7 @@ def process_app_deployment_request(
|
|||||||
logger.log(
|
logger.log(
|
||||||
f"Creating webapp deployment in: {deployment_dir} with container id: {deployment_container_tag}"
|
f"Creating webapp deployment in: {deployment_dir} with container id: {deployment_container_tag}"
|
||||||
)
|
)
|
||||||
|
# CREATES DEPLOYMENT DIR, NOT SKIPPING FOR TESTING
|
||||||
deploy_webapp.create_deployment(
|
deploy_webapp.create_deployment(
|
||||||
ctx,
|
ctx,
|
||||||
deployment_dir,
|
deployment_dir,
|
||||||
@ -213,21 +215,24 @@ def process_app_deployment_request(
|
|||||||
# add_tags_to_image(image_registry, app_image_shared_tag, deployment_container_tag)
|
# add_tags_to_image(image_registry, app_image_shared_tag, deployment_container_tag)
|
||||||
logger.log("Tag complete")
|
logger.log("Tag complete")
|
||||||
else:
|
else:
|
||||||
extra_build_args = [] # TODO: pull from request
|
# SKIP BUILD
|
||||||
logger.log(f"Building container image: {deployment_container_tag}")
|
logger.log("TESTING: Skipping container build.")
|
||||||
build_container_image(
|
|
||||||
app, deployment_container_tag, extra_build_args, logger
|
# extra_build_args = [] # TODO: pull from request
|
||||||
)
|
# logger.log(f"Building container image: {deployment_container_tag}")
|
||||||
logger.log("Build complete")
|
# build_container_image(
|
||||||
logger.log(f"Pushing container image: {deployment_container_tag}")
|
# app, deployment_container_tag, extra_build_args, logger
|
||||||
push_container_image(deployment_dir, logger)
|
# )
|
||||||
logger.log("Push complete")
|
# logger.log("Build complete")
|
||||||
# The build/push commands above will use the unique deployment tag, so now we need to add the shared tag.
|
# logger.log(f"Pushing container image: {deployment_container_tag}")
|
||||||
logger.log(
|
# push_container_image(deployment_dir, logger)
|
||||||
f"(SKIPPED) Adding global app image tag: {app_image_shared_tag} to newly built image: {deployment_container_tag}"
|
# logger.log("Push complete")
|
||||||
)
|
# # The build/push commands above will use the unique deployment tag, so now we need to add the shared tag.
|
||||||
# add_tags_to_image(image_registry, deployment_container_tag, app_image_shared_tag)
|
# logger.log(
|
||||||
logger.log("Tag complete")
|
# f"(SKIPPED) Adding global app image tag: {app_image_shared_tag} to newly built image: {deployment_container_tag}"
|
||||||
|
# )
|
||||||
|
# # add_tags_to_image(image_registry, deployment_container_tag, app_image_shared_tag)
|
||||||
|
# logger.log("Tag complete")
|
||||||
else:
|
else:
|
||||||
logger.log("Requested app is already deployed, skipping build and image push")
|
logger.log("Requested app is already deployed, skipping build and image push")
|
||||||
|
|
||||||
@ -240,7 +245,9 @@ def process_app_deployment_request(
|
|||||||
|
|
||||||
# 8. update k8s deployment
|
# 8. update k8s deployment
|
||||||
if needs_k8s_deploy:
|
if needs_k8s_deploy:
|
||||||
deploy_to_k8s(deployment_record, deployment_dir, recreate_on_deploy, logger)
|
# SKIP DEPLOY
|
||||||
|
logger.log("TESTING: Skipping deployment to k8s.")
|
||||||
|
# deploy_to_k8s(deployment_record, deployment_dir, recreate_on_deploy, logger)
|
||||||
|
|
||||||
logger.log("Publishing deployment to registry.")
|
logger.log("Publishing deployment to registry.")
|
||||||
publish_deployment(
|
publish_deployment(
|
||||||
@ -251,6 +258,7 @@ def process_app_deployment_request(
|
|||||||
dns_record,
|
dns_record,
|
||||||
dns_lrn,
|
dns_lrn,
|
||||||
deployment_dir,
|
deployment_dir,
|
||||||
|
dns_value,
|
||||||
app_deployment_request,
|
app_deployment_request,
|
||||||
webapp_deployer_record,
|
webapp_deployer_record,
|
||||||
logger,
|
logger,
|
||||||
@ -304,6 +312,7 @@ def dump_known_requests(filename, requests, status="SEEN"):
|
|||||||
help="How to handle requests with an FQDN: prohibit, allow, preexisting",
|
help="How to handle requests with an FQDN: prohibit, allow, preexisting",
|
||||||
default="prohibit",
|
default="prohibit",
|
||||||
)
|
)
|
||||||
|
@click.option("--ip", help="IP address of the k8s deployment (to be set in DNS record)", default=None)
|
||||||
@click.option("--record-namespace-dns", help="eg, lrn://laconic/dns", required=True)
|
@click.option("--record-namespace-dns", help="eg, lrn://laconic/dns", required=True)
|
||||||
@click.option(
|
@click.option(
|
||||||
"--record-namespace-deployments",
|
"--record-namespace-deployments",
|
||||||
@ -381,6 +390,7 @@ def command( # noqa: C901
|
|||||||
only_update_state,
|
only_update_state,
|
||||||
dns_suffix,
|
dns_suffix,
|
||||||
fqdn_policy,
|
fqdn_policy,
|
||||||
|
ip,
|
||||||
record_namespace_dns,
|
record_namespace_dns,
|
||||||
record_namespace_deployments,
|
record_namespace_deployments,
|
||||||
dry_run,
|
dry_run,
|
||||||
@ -429,6 +439,13 @@ def command( # noqa: C901
|
|||||||
)
|
)
|
||||||
sys.exit(2)
|
sys.exit(2)
|
||||||
|
|
||||||
|
if fqdn_policy == "allow" and not ip:
|
||||||
|
print(
|
||||||
|
"--ip is required with 'allow' fqdn-policy",
|
||||||
|
file=sys.stderr,
|
||||||
|
)
|
||||||
|
sys.exit(2)
|
||||||
|
|
||||||
tempdir = tempfile.mkdtemp()
|
tempdir = tempfile.mkdtemp()
|
||||||
gpg = gnupg.GPG(gnupghome=tempdir)
|
gpg = gnupg.GPG(gnupghome=tempdir)
|
||||||
|
|
||||||
@ -665,6 +682,7 @@ def command( # noqa: C901
|
|||||||
record_namespace_deployments,
|
record_namespace_deployments,
|
||||||
record_namespace_dns,
|
record_namespace_dns,
|
||||||
dns_suffix,
|
dns_suffix,
|
||||||
|
ip,
|
||||||
os.path.abspath(deployment_parent_dir),
|
os.path.abspath(deployment_parent_dir),
|
||||||
kube_config,
|
kube_config,
|
||||||
image_registry,
|
image_registry,
|
||||||
|
@ -72,11 +72,12 @@ def process_app_removal_request(
|
|||||||
# TODO(telackey): Call the function directly. The easiest way to build the correct click context is to
|
# TODO(telackey): Call the function directly. The easiest way to build the correct click context is to
|
||||||
# exec the process, but it would be better to refactor so we could just call down_operation with the
|
# exec the process, but it would be better to refactor so we could just call down_operation with the
|
||||||
# necessary parameters
|
# necessary parameters
|
||||||
down_command = [sys.argv[0], "deployment", "--dir", deployment_dir, "down"]
|
main_logger.log("TESTING: Skipping stopping deployment.")
|
||||||
if delete_volumes:
|
# down_command = [sys.argv[0], "deployment", "--dir", deployment_dir, "down"]
|
||||||
down_command.append("--delete-volumes")
|
# if delete_volumes:
|
||||||
result = subprocess.run(down_command)
|
# down_command.append("--delete-volumes")
|
||||||
result.check_returncode()
|
# result = subprocess.run(down_command)
|
||||||
|
# result.check_returncode()
|
||||||
|
|
||||||
removal_record = {
|
removal_record = {
|
||||||
"record": {
|
"record": {
|
||||||
|
@ -689,6 +689,7 @@ def publish_deployment(
|
|||||||
dns_record,
|
dns_record,
|
||||||
dns_lrn,
|
dns_lrn,
|
||||||
deployment_dir,
|
deployment_dir,
|
||||||
|
dns_value=None,
|
||||||
app_deployment_request=None,
|
app_deployment_request=None,
|
||||||
webapp_deployer_record=None,
|
webapp_deployer_record=None,
|
||||||
logger=None,
|
logger=None,
|
||||||
@ -721,6 +722,8 @@ def publish_deployment(
|
|||||||
}
|
}
|
||||||
if app_deployment_request:
|
if app_deployment_request:
|
||||||
new_dns_record["record"]["request"] = app_deployment_request.id
|
new_dns_record["record"]["request"] = app_deployment_request.id
|
||||||
|
if dns_value:
|
||||||
|
new_dns_record["record"]["value"] = dns_value
|
||||||
|
|
||||||
if logger:
|
if logger:
|
||||||
logger.log("Publishing DnsRecord.")
|
logger.log("Publishing DnsRecord.")
|
||||||
|
Loading…
Reference in New Issue
Block a user