saagie / gradle-saagie-dataops-plugin

Saagie Gradle Plugin for the new version (2.0) of Saagie Dataops Orchestrator
Apache License 2.0
2 stars 0 forks source link

Error while migrating project from A4 to OVH #335

Closed tquiviger closed 3 years ago

tquiviger commented 3 years ago

When trying to migrate projects from A4 to OVH I'm facing issues during the import phase.

Something went wrong when creating project job: {"errors":[{"message":"Job not valid","extensions":{"technology":"not exists","commandLine":"not allowed","package":"not allowed","classification":"ValidationError"}}],"data":null}

Both source and target platforms have the latest Saagie version (with Catalog). Zip file included for you to check.

7024406c.zip

tquiviger commented 3 years ago

Command used :

gradle projectsImport -PprojectSaagie="c56fdf63-10d5-4e71-8c9f-939448384ae0" -Pimportpath="7024406c"

build.gradle :

plugins {
  id "io.saagie.gradle-saagie-dataops-plugin" version "2.1.12"
}

saagie {
     server {
        url = "https://datafabric-workspace.bva.saagie.io"
        login = "thomas.quiviger"
        password = "xxxxxxxxx"
        environment = 1
        jwt = true
        timeout = 3
    }

    project {
      id = projectSaagie
      include_all_artifacts=true
    }

    importArtifacts {
          import_file ="./exports/${importpath}.zip"  
    }
}
ZouhairBear commented 3 years ago

How to test :

Version to test : 2.1.12

The Export phase:

Create a build file: Example of build.projectsExport.gradle:

plugins {
  id "io.saagie.gradle-saagie-dataops-plugin" version "2.1.12"
}
saagie {
    server {
        url = "REPLACE_SAAGIEURL"
        login = "REPLACE_SAAGIELOGIN"
    password = "REPLACE_SAAGIEPASSWORD"
        environment = "REPLACE_SAAGIE"
    jwt = true
    }
    project {
        id = "REPLACE_SAAGIE_PROJECT_ID"
        include_all_artifacts=true
    }

    exportArtifacts {
          export_file = "./job/bash.zip" // <=== url "./job/" should exist  
          overwrite=true  // <=== temporary_directory ./tmp'  should exist        
    }
}

Export job using this commande : The command line : gradle -b build.projectsExport.gradle projectsExport

The import phase:

Create a new build file: Example : build.projectsImport.gradle:

plugins {
    id 'groovy'
    id 'io.saagie.gradle-saagie-dataops-plugin' version '2.1.12'
}

saagie {
    server {
        url = "REPLACE_SAAGIEURL"
        login = "REPLACE_SAAGIELOGIN"
    password = "REPLACE_SAAGIEPASSWORD"
        environment = "REPLACE_SAAGIE"
    jwt = true
        acceptSelfSigned = true
    }
    project {
        id = "REPLACE_SAAGIE_PROJECT_ID"
    }
    importArtifacts {
        import_file = "./job/export.zip"
        temporary_directory='./tmp'
    }
}

Then use this command line: The command line : gradle -b build.projectsImport.gradle projectsImport

Expected behvior

> Task :projectsImport
{status=success, job=[{id=job_id_v2, name=bash job name}], pipeline=[]}

BUILD SUCCESSFUL in 5s
1 actionable task: 1 executed
ZouhairBear commented 3 years ago

335-import 335-import-2

ZouhairBear commented 3 years ago

How to test :

Version to test : 2.1.16

The Export phase:

Create a build file: Example of build.projectsExport.gradle:

plugins {
  id "io.saagie.gradle-saagie-dataops-plugin" version "2.1.16"
}
saagie {
    server {
        url = "REPLACE_SAAGIEURL"
        login = "REPLACE_SAAGIELOGIN"
    password = "REPLACE_SAAGIEPASSWORD"
        environment = "REPLACE_SAAGIE"
    jwt = true
    }
    project {
        id = "REPLACE_SAAGIE_PROJECT_ID"
        include_all_artifacts=true
    }

    exportArtifacts {
          export_file = "./export_alll_artifacts.zip" //  
          overwrite=true  // <=== temporary_directory ./tmp'  should exist        
    }
}

Export job using this commande : The command line : gradle -b build.projectsExport.gradle projectsExport

The import phase:

Create a new build file: Example : build.projectsImport.gradle:

plugins {
    id 'groovy'
    id 'io.saagie.gradle-saagie-dataops-plugin' version '2.1.16'
}

saagie {
    server {
        url = "REPLACE_SAAGIEURL"
        login = "REPLACE_SAAGIELOGIN"
    password = "REPLACE_SAAGIEPASSWORD"
        environment = "REPLACE_SAAGIE"
    jwt = true
        acceptSelfSigned = true
    }
    project {
        id = "REPLACE_SAAGIE_PROJECT_ID"
    }
    importArtifacts {
        import_file = "./export_alll_artifacts.zip"
        temporary_directory='./tmp'
    }
}

Then use this command line: The command line : gradle -b build.projectsImport.gradle projectsImport

Expected behvior

> Task :projectsImport
{status=success, job=[....], pipeline=[.....],variable[....]}

BUILD SUCCESSFUL in 5s
1 actionable task: 1 executed
ZouhairBear commented 3 years ago