1. A computer-implemented method to deploy a software application based on functionality provided in a platform product on a cloud computing platform, the method comprising: analyzing application artifacts for the software application to create application metadata describing application artifacts requirements; publishing the application artifacts and the application metadata onto an application repository; creating a product description defining an application product for the software application to be deployed on the cloud computing platform, wherein the application product defines the application artifacts, and wherein the application product is based on the platform product provided onto a platform repository by the cloud computing platform; creating a product reference to specify the platform product, wherein the platform product satisfies the application artifacts requirements; publishing the product description and the product reference onto the application repository to update the application metadata with reference to the application product and the platform product; creating a composite repository in the application repository, the composite repository comprising composite metadata to refer to the application artifacts on the application repository and to the platform product on the platform repository; and transferring the application repository to the platform repository.