source: ogBrowser-Git/Jenkinsfile

jenkins
Last change on this file was d072c2e, checked in by Vadim Troshchinskiy Shmelev <vtroshchinskiy@…>, 2 months ago

test

  • Property mode set to 100644
File size: 2.4 KB
Line 
1pipeline {
2    agent {
3        docker {
4            image 'ogbrowser-build:latest'
5
6            args '-u root:root'
7            label 'jenkins-slave'
8        }
9    }
10    stages {
11        stage('Prepare environment') {
12            steps {
13                sh '''
14                    apt-get update
15                    apt-get install -y openssh-client
16                '''
17            }
18        }
19
20
21        stage('Install Dependencies') {
22            steps {
23                sshagent (credentials: ['aptly-key']) {
24
25                sh '''
26                    pwd
27                    uname -a
28                    df
29                    env
30
31
32                    export DEBIAN_FRONTEND=noninteractive
33                    apt-get update
34                    apt-get install -y build-essential cmake g++ qt6-base-dev qt6-webengine-dev linguist-qt6  libgl1-mesa-dev qt6-tools-dev qt6-l10n-tools  qt6-tools-dev-tools libqt6core5compat6-dev lxqt-build-tools qt6-webengine-dev-tools libqt6webenginecore6-bin ninja-build
35
36
37                    echo "Test"
38                    aptly=172.17.8.68
39                    ssh aptly@${aptly} -o StrictHostKeyChecking=no "uptime"
40
41                '''
42                }
43            }
44        }
45        stage('Build') {
46            steps {
47                sh '''
48                    mkdir -p build
49                    cd build
50                    cmake .. -DCPACK_PACKAGE_VERSION_PATCH=${BUILD_NUMBER} -G Ninja
51                    ninja
52                '''
53            }
54        }
55        stage('Create package') {
56            steps {
57                sh '''
58                    cd build
59                    cpack -G DEB
60                '''
61            }
62        }
63
64        stage("Upload package to Aptly") {
65            steps {
66                sshagent (credentials : ['aptly-key']) {
67                    withCredentials([string(credentialsId: 'aptly-gpg-passphrase', variable: 'GPG_PASSPHRASE')]) {
68                        sh '''
69                        aptly=172.17.8.68
70                        scp -o StrictHostKeyChecking=no build/OGBrowser-2.0.${BUILD_NUMBER}-Linux.deb aptly@${aptly}:/tmp
71                        ssh aptly@${aptly} -o StrictHostKeyChecking=no "aptly repo add opengnsys /tmp/OGBrowser-2.0.${BUILD_NUMBER}-Linux.deb"
72                        '''
73                    }
74                }
75            }
76        }
77    }
78    post {
79        always {
80            cleanWs()
81        }
82    }
83}
Note: See TracBrowser for help on using the repository browser.