@@ -889,48 +889,44 @@ func (Cloud) Image(ctx context.Context) {
889889// Push builds a cloud image tags it correctly and pushes to remote image repo.
890890// Previous login to elastic registry is required!
891891func (Cloud ) Push () error {
892- snapshot := os . Getenv ( snapshotEnv )
893- defer os . Setenv ( snapshotEnv , snapshot )
894-
895- os . Setenv ( snapshotEnv , "true" )
892+ agentVersion , err := mage . AgentPackageVersion ( )
893+ if err != nil {
894+ return fmt . Errorf ( "failed to get agent package version: %w" , err )
895+ }
896896
897- version := getVersion ()
898- var tag string
897+ var targetTag string
899898 if envTag , isPresent := os .LookupEnv ("CUSTOM_IMAGE_TAG" ); isPresent && len (envTag ) > 0 {
900- tag = envTag
899+ targetTag = envTag
901900 } else {
902- commit := dockerCommitHash ()
903- time := time .Now ().Unix ()
904-
905- tag = fmt .Sprintf ("%s-%s-%d" , version , commit , time )
901+ targetTag = fmt .Sprintf ("%s-%s-%d" , agentVersion , dockerCommitHash (), time .Now ().Unix ())
906902 }
907903
908- sourceCloudImageName := fmt .Sprintf ("docker.elastic.co/beats-ci/elastic-agent-cloud:%s" , version )
904+ sourceCloudImageName := fmt .Sprintf ("docker.elastic.co/beats-ci/elastic-agent-cloud:%s-SNAPSHOT " , agentVersion )
909905 var targetCloudImageName string
910906 if customImage , isPresent := os .LookupEnv ("CI_ELASTIC_AGENT_DOCKER_IMAGE" ); isPresent && len (customImage ) > 0 {
911- targetCloudImageName = fmt .Sprintf ("%s:%s" , customImage , tag )
907+ targetCloudImageName = fmt .Sprintf ("%s:%s" , customImage , targetTag )
912908 } else {
913- targetCloudImageName = fmt .Sprintf (cloudImageTmpl , tag )
909+ targetCloudImageName = fmt .Sprintf (cloudImageTmpl , targetTag )
914910 }
915911
916912 fmt .Printf (">> Setting a docker image tag to %s\n " , targetCloudImageName )
917- err : = sh .RunV ("docker" , "tag" , sourceCloudImageName , targetCloudImageName )
913+ err = sh .RunV ("docker" , "tag" , sourceCloudImageName , targetCloudImageName )
918914 if err != nil {
919- return fmt .Errorf ("Failed setting a docker image tag: %w" , err )
915+ return fmt .Errorf ("failed setting a docker image tag: %w" , err )
920916 }
921917 fmt .Println (">> Docker image tag updated successfully" )
922918
923919 fmt .Println (">> Pushing a docker image to remote registry" )
924920 err = sh .RunV ("docker" , "image" , "push" , targetCloudImageName )
925921 if err != nil {
926- return fmt .Errorf ("Failed pushing docker image: %w" , err )
922+ return fmt .Errorf ("failed pushing docker image: %w" , err )
927923 }
928924 fmt .Printf (">> Docker image pushed to remote registry successfully: %s\n " , targetCloudImageName )
929925
930926 return nil
931927}
932928
933- // Creates a new devmachine that will be auto-deleted in 6 hours.
929+ // Create a new devmachine that will be auto-deleted in 6 hours.
934930// Example: MACHINE_IMAGE="family/platform-ingest-elastic-agent-ubuntu-2204" ZONE="us-central1-a" mage devmachine:create "pavel-dev-machine"
935931// ZONE defaults to 'us-central1-a', MACHINE_IMAGE defaults to 'family/platform-ingest-elastic-agent-ubuntu-2204'
936932func (Devmachine ) Create (instanceName string ) error {
0 commit comments