forked from Thrifleganger/ci-plugin-demo
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathJenkinsfile
More file actions
63 lines (59 loc) · 1.78 KB
/
Jenkinsfile
File metadata and controls
63 lines (59 loc) · 1.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/*
This is a declarative pipeline script for Jenkins for Projucer type JUCE plugin projects
Fill the variables at the start of this file to configure the build pipeline for your plugin.
The build pipeline performs the following stages:
1) Checkout: The build pipeline is triggered for every change to the master branch. The Checkout stage clones the project locally within the Jenkins executor.
2) Build: Depending on the OS, the corresponding build systems is utilized to build VST3 and AU targets.
3) Test: The plugin is subjected to a testing application called pluginval.
4) Deploy: The build artifacts, including the VST3 and AU files are uploaded to an S3 bucket.
5) Notify: A slack notification is sent out to the corresponding channel to notify whether a build has succeeded or failed.
*/
/*
The project name is the name of projucer file / plugin name configured within the projucer file. Avoid spaces.
*/
def projectName = 'ci-plugin-demo'
/*
The clone URL of the git repo. Add the SSH variant which starts with "git@github.com"
*/
def gitRepoUrl = 'git@github.com:Thrifleganger/ci-plugin-demo.git'
def version = ''
/*
Start of pipeline script.
*/
pipeline {
agent any
triggers {
pollSCM('*/2 * * * *')
}
stages {
stage('Checkout') {
steps {
cleanWs()
checkout([
$class: 'GitSCM',
branches: [[name: '*/master']],
extensions: [],
userRemoteConfigs: [[
credentialsId: 'jenkins-to-github',
url: "${gitRepoUrl}"
]]
])
}
}
stage('Build') {
steps {
echo "Build"
}
}
stage('Test') {
steps {
echo "Test"
}
}
stage('Package') {
steps {
echo "Package"
}
}
}
}