ci/publish.groovy
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 20 Jan 2020 11:34:02 +0000
changeset 286 c08455e14746
parent 229 08322591d2b1
permissions -rw-r--r--
Rakefiles: add support for manual dependency definitions Normally, pacjage dependencies are extracted automatically from package definition but eXept sometimes get dependencies wrong. As we (still, sigh) use some packages form eXept's CVS tree, this commit introduces `dependencies.rbspec` that has these manually fixed. This commit also includes fix for an issue with `stx:goodies/communication`
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
223
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
/*
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
 * This is a publish pipeline
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
 */
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
pipeline {
229
08322591d2b1 CI: bind publish task to "linux' nodes with `sftp` client
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 223
diff changeset
     7
    agent { label 'linux' }
223
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
    parameters {
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
        string(name: 'job', description: 'Job whose artifacts to upload',  defaultValue: 'stx_jv')
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
        string(name: 'srv', description: 'Server (and username) where to upload artifacts',  defaultValue: "${env.STX_PUBLISH_SERVER}")
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
        string(name: 'dir', description: 'Directory where to upload artifacts  ',  defaultValue: "${env.STX_PUBLISH_DIRECTORY}/6.2.6")
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
    }
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
    stages {
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
        stage('Copy artifacts') {
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
            steps {
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
                copyArtifacts projectName: "${params.job}", selector: lastSuccessful(), excludes: '**/*prebuilt*'
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
                sh "ls -al artifacts"
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
            }
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
        }
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
        stage ( "Upload artifacts" ) {
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
            steps {
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
                sshagent([ "8be01219-a51e-410a-9850-bf9c134283fb" ]) {
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
                    sh script:
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
                        """
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
                        sftp -b - ${params.srv} <<END
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
                        cd ${params.dir}
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
                        ls
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
                        rm *
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
                        put artifacts/*
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
                        ls
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
                        END
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
                        """.stripIndent()
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
                }
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
            }
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
        }
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
        stage ( "Cleanup" ) {
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
            steps {
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
                cleanWs()
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
            }
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
        }
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
    }
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
}
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
575d0458b5c0 CI: added a job (pipeline) and step to publish artifacts to public server
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47