[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-08-11。"],[],[],null,["# Maintaining your product\n\nThis page describes the guidelines for maintaining and updating your product\nafter it is live on Cloud Marketplace.\n\nManaging updates for your app\n-----------------------------\n\nThe process for updating your product is similar to creating your\ninitial app package. First, you must generate a new set of container images\nfor the update, and push them to your Container Registry staging repository.\nDepending on whether you are adding a new version or updating an existing\nversion, use the steps below to update your app.\n\n### Adding a new version\n\nIn your Container Registry staging repository, tag your app\nimages with a new minor version tag. Then, follow the steps to\n[submit your app](/marketplace/docs/partners/kubernetes/submitting#add_your_solution_in_partner_portal)\nin Producer Portal.\n\n### Updating an existing version\n\nIn your Container Registry staging repository, tag your images with\nthe current minor version tag. Then, use the steps below to update the\napp in Producer Portal.\n\n1. Open Producer Portal in the Google Cloud console:\n\n ```\n https://console.cloud.google.com/producer-portal?project=YOUR_PUBLIC_PROJECT_ID\n ```\n\n Replace \u003cvar translate=\"no\"\u003eYOUR_PUBLIC_PROJECT_ID\u003c/var\u003e with the ID for the public\n project that you created for Cloud Marketplace---for example,\n `my-organization-public`.\n | **Note:** If you don't see the link, or can't access the URL, verify that you've selected the correct project and have the Editor (`roles/editor`) role for the project. If you still can't access the URL, use the [Partner Support Desk](https://g.co/cloud/psd-partner) to request assistance, and include the word \"Marketplace\" in your description. For more information about Partner Support Desk, visit [Request assistance with Cloud Marketplace](/marketplace/docs/partners/get-support).\n2. In the list of products, click the product ID.\n\n3. On the **Overview** page of your product, go to the **Container images**\n section, and click **Edit**.\n\n4. By **Proposed Releases** , click **Edit**. It might take a few seconds to read the\n repository and load your tags.\n\n5. Click the release that you want to update.\n\n6. In **Display tag**, select the release that uses the corresponding\n digest to the image you updated in your Container Registry.\n\n7. After you've updated all the information for the release, click **Done**.\n\n8. When you're done adding supported releases to your product, click **Save and Validate**.\n\n9. Click **Submit** to submit the container images for review.\n\n10. After all reviews have been approved, you can publish and launch the\n product by opening the **Overview** page of your product, and clicking **Publish**.\n\nAs with initial submission, the Cloud Marketplace team performs automated\ntesting and reviews your submission.\n\nAfter the updated version is published, it becomes the default for new customers.\nCurrent customers will see new images pushed to existing tags. Deployments\nfrom the Cloud Marketplace product page are always pinned to image digests,\nand are not automatically updated. We also recommend pinning images to digests\nfor customers who deploy your app through the command line.\n\nTo help your users update their app images, we recommend adding\nthe upgrade steps to your\n[user guide](/marketplace/docs/partners/kubernetes/create-app-package#user-guide).\n\n### Migrating off of deprecated Kubernetes APIs\n\nAs Kubernetes APIs evolve, old APIs are eventually deprecated and removed. This\nmeans that your app can become incompatible with current GKE\nclusters. Typically existing objects are persisted, so customers' running\ndeployments are unaffected.\n\nTo prevent failures in new app deployments:\n\n1. Review the current GKE versions in the [GKE release notes](https://cloud.google.com/kubernetes-engine/docs/release-notes#current_versions) and upcoming versions in the [GKE release schedule](https://cloud.google.com/kubernetes-engine/docs/release-schedule).\n2. Update your app manifests to remove any dependencies on deprecated Kubernetes API versions which are removed in any current or upcoming GKE versions in the Regular or Stable channel. Refer to the Kubernetes [deprecated API migration guide](https://kubernetes.io/docs/reference/using-api/deprecation-guide).\n - For example, update uses of the `batch/v1beta1` `CronJob` to `batch/v1`, as `batch/v1beta1` will be removed in Kubernetes version 1.25, according to the [guide](https://kubernetes.io/docs/reference/using-api/deprecation-guide/#cronjob-v125).\n - If you're unable to update the manifests for earlier releases of your app, we recommend removing the release or setting the [`k8sVersion`\n cluster constraint](https://github.com/GoogleCloudPlatform/marketplace-k8s-app-tools/blob/master/docs/schema.md#clusterconstraints) in your schema.\n3. Complete testing of all rebuilt container images using the [mpdev tool](https://github.com/GoogleCloudPlatform/marketplace-k8s-app-tools/blob/master/docs/mpdev-references.md), ideally on a cluster with a Kubernetes version that doesn't support the deprecated API you're removing.\n - For example, use a Kubernetes version 1.22 cluster to test updating from the `apiextensions.k8s.io/v1beta1` `CustomResourceDefinition`, which was removed in Kubernetes version 1.22.\n4. Follow the instructions for [Adding a new version](#adding_a_new_version) or [Updating an existing version](#updating_an_existing_version) to submit your changes in the portal.\n\nPricing changes\n---------------\n\nPricing changes take effect after a certain waiting period, and are not\nimmediate. For specifics, refer to your contract.\n\n1. Open Producer Portal in the Google Cloud console:\n\n ```\n https://console.cloud.google.com/producer-portal?project=YOUR_PUBLIC_PROJECT_ID\n ```\n\n Replace \u003cvar translate=\"no\"\u003eYOUR_PUBLIC_PROJECT_ID\u003c/var\u003e with the ID for the public\n project that you created for Cloud Marketplace---for example,\n `my-organization-public`.\n | **Note:** If you don't see the link, or can't access the URL, verify that you've selected the correct project and have the Editor (`roles/editor`) role for the project. If you still can't access the URL, use the [Partner Support Desk](https://g.co/cloud/psd-partner) to request assistance, and include the word \"Marketplace\" in your description. For more information about Partner Support Desk, visit [Request assistance with Cloud Marketplace](/marketplace/docs/partners/get-support).\n2. In the list of products, click the product ID.\n\n3. On the **Overview** page of your product, go to **Pricing review** , and click\n **Edit**.\n\n4. Make any changes to your pricing.\n\n5. Click **Submit** to submit the pricing for review.\n\n6. After all reviews have been approved, you can publish and launch the\n product by opening the **Overview** page of your product and clicking\n **Publish**.\n\nDeprecating apps\n----------------\n\nAs you develop your software, you might want to make certain releases\nunavailable on Cloud Marketplace.\n\n### Removing an app release\n\nWhen you remove a release from your product, it is immediately removed from\nthe product details page when the product is published. However, removing\na release does not remove the images published to the public\nContainer Registry.\n\n1. Open Producer Portal in the Google Cloud console:\n\n ```\n https://console.cloud.google.com/producer-portal?project=YOUR_PUBLIC_PROJECT_ID\n ```\n\n Replace \u003cvar translate=\"no\"\u003eYOUR_PUBLIC_PROJECT_ID\u003c/var\u003e with the ID for the public\n project that you created for Cloud Marketplace---for example,\n `my-organization-public`.\n | **Note:** If you don't see the link, or can't access the URL, verify that you've selected the correct project and have the Editor (`roles/editor`) role for the project. If you still can't access the URL, use the [Partner Support Desk](https://g.co/cloud/psd-partner) to request assistance, and include the word \"Marketplace\" in your description. For more information about Partner Support Desk, visit [Request assistance with Cloud Marketplace](/marketplace/docs/partners/get-support).\n2. In the list of products, click the product ID.\n\n3. On the **Overview** page of your product, go to the **Container images**\n section, and then click **Edit**.\n\n4. Next to **Proposed Releases** , click **Edit**. It might take a few\n seconds to read the repository and load your tags.\n\n5. Highlight the release that you want to remove.\n\n6. Click delete **Delete** to remove the version.\n\n7. Click **Done**.\n\n8. When you're done removing releases to your product, click **Save and Validate**.\n\n9. Click **Submit** to submit the container images for review.\n\n10. After all reviews have been approved, you can publish and launch the\n product by opening the **Overview** page of your product, and clicking **Publish**."]]