We've got several Java App Engine Standard projects that I am migrating from App Engine 8 to App Engine 11 on Spring Boot. A number of them use a vpc-access-connector in their appengine-web.xml file, which we inject using resource filtering during the maven-war-plugin. The new way to configure the app engine is to use a src/main/appengine/app.yaml file and a jar instead of a war as the artifact, however I have been unable to determine how to do variable substitution into the app.yaml file. I have tried including this is my maven section, but it did not work:
<resources>
<resource>
<directory>src/main/appengine</directory>
<filtering>true</filtering>
</resource>
</resources>
I need to inject different values based on the maven profile being run. We currently define vpc access connector values in maven properties sections within profiles aligned with our spring profiles for each of our deployment environments, like test, ea, and prod.
What is the solution here?
Is there some way to use different app.yaml files based on which profile is being invoked? (This is not the best solution, as it would mean most of the file content would be static copies, though the common stuff could be moved to an included yaml.)
Or is there some syntax I can't locate online that will allow me to set an environment variable or maven property and refer to it from within the src/main/appengine/app.yaml file?
Thanks for any assistance!
Tom Harris