Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

What image is compatible with pipeline with pipe: atlassian/google-app-engine-deploy:1.1.1?

Bruce Wilcox April 20, 2023
maven:3.8.1-openjdk-8 was working but includes python 2

Getting an error saying Python 3 is now required.

What image has java 8, maven, and python 3?

1 answer

1 accepted

0 votes
Answer accepted
Theodora Boudale
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
April 21, 2023

Hi Bruce,

There is no requirement to use a specific Docker image as a build container with the pipe. When a pipe is executed, there is another Docker container (the pipe's container) running inside the build container of the step (Docker-in-Docker). The pipe's container should have all the tools it needs to run.

If another command of your build requires python 3, then you would indeed need to use a container with python 3 or install python 3 during the build by including the necessary commands in that step in your bitbucket-pipelines.yml.

For the build container, we support public and private Docker images including those hosted on Docker Hub, AWS, GCP, Azure, and self-hosted registries accessible on the internet. Please keep in mind that Atlassian neither owns nor maintains every single image in these registries, so I don't know which image would meet your requirements.

I did check, though, a different version of the image you are using, specifically maven:3.8.3-openjdk-8. If I use this image as a build container and add the following command in my yml file:

- python3 --version

it looks like Python 3 is installed, as the output is

+ python3 --version
Python 3.9.2

If you are familiar with Docker, we do recommend creating and using your own custom Docker image that includes only the tools and the versions you need, in order to keep it lightweight:

Kind regards,
Theodora

Bruce Wilcox April 22, 2023

Thank you very much!

Docker image maven:3.8.3-openjdk-8 got me back up and running.

As a solo, full stack, developer of 4 web applications, taking the time to build my own docker images for this purpose is something that would slow me down too much. 

I very much appreciate how BitBucket pipelines increases my productivity dramatically.

Theodora Boudale
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
April 24, 2023

Hi Bruce,

Thank you for the update and you are very welcome!

I understand that building your own Docker image can be time-consuming. It's good to hear that the image maven:3.8.3-openjdk-8 works for you and that pipelines increases your productivity.

Please feel free to reach out if you ever need anything else!

Kind regards,
Theodora

Bruce Wilcox August 4, 2024

Java 8 support in Google App Engine has been discontinued. Java 11 support will be discontinued in October. I am now trying to use Java 17 but I find that 

image: maven:3.8.3-openjdk-17
does not include Python 3 so
pipe: atlassian/google-app-engine-deploy:1.1.1
fails. 
IMO the 
project should include a list of compatible Docker images.
I need Java 21 support as well.
Any help is appreciated.
Theodora Boudale
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
August 5, 2024

Hi Bruce,

As I explained in my initial answer a year ago, there is no requirement to use a specific Docker image as a step's build container with the pipe. A pipe starts a separate Docker container and it should run regardless of the step's build container. So, it's not clear how the absence of Python in the build container affects the pipe.

If you are experiencing issues with the pipe, then:

  • Please ensure you are using the latest version of the pipe, which is 1.6.0 at the moment.
  • Add the variable DEBUG: 'true' in the pipe's definition and also the variable EXTRA_ARGS: '--verbosity=debug'
  • Afterwards, share the pipe's definition from your bitbucket-pipelines.yml file and also the pipe's output from the build logs, so we can better understand what is happening.

Kind regards,
Theodora

Bruce Wilcox September 23, 2024

I believe that the pipe atlassian/google-app-engine-deploy invokes gcloud and gcloud requires python.

I finally broke down and created my own Docker image that works.

Here is the Dockerfile:

 

FROM maven:3.9.8-eclipse-temurin-17

RUN apt-get update \
&& apt-get install -y python3 --no-install-recommends \
&& rm -rf /var/lib/apt/lists/*

See https://hub.docker.com/repository/docker/itipsdev/docker-java17-pipeline/general

 

 

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events