60 lines
2.4 KiB
Groovy
60 lines
2.4 KiB
Groovy
pipeline {
|
|
agent any
|
|
|
|
environment {
|
|
JENKINSONGITEA=credentials('d0e86441-2157-405f-8539-a9a9010c6ecf')
|
|
JENKINSONMATRIXTOKEN=credentials('17d18fd7-29eb-4957-9532-ce42aaa9b4ec')
|
|
MATRIX_ROOMID="//todo"
|
|
GITEA_PROJECT="https://gitea.arg.rip/beefhavers/morrowind"
|
|
}
|
|
stages {
|
|
stage('meta: avatar'){
|
|
when { changeset "meta/avatar.png"}
|
|
steps {
|
|
script{
|
|
env.avatar=sh(returnStdout: true, script: "base64 meta/avatar.png");
|
|
//to gitea
|
|
sh(returnStdout: true, script: """
|
|
curl -X 'POST' \
|
|
'https://gitea.arg.rip/api/v1/repos/beefhavers/morrowind/avatar' \
|
|
-H 'accept: application/json' \
|
|
-H 'Authorization: token ${env.JENKINSONGITEA}' \
|
|
-H 'Content-Type: application/json' \
|
|
-d '{
|
|
"image": "${env.avatar}"
|
|
}'
|
|
""")
|
|
|
|
//to matrix
|
|
env.avatarMXC=sh(returnStdout: true, script: """
|
|
curl 'https://matrix.server/_matrix/media/v3/upload?filename=morrowind-avatar.png' \
|
|
-X 'POST' \
|
|
-H 'authorization: Bearer ${env.JENKINSONMATRIXTOKEN}' \
|
|
-H 'Content-Type: image/png' \
|
|
--compressed \
|
|
--data-binary @meta/avatar.png \
|
|
| jq .content_uri
|
|
""").trim
|
|
|
|
sh(returnStdout: true, script: """
|
|
curl -X 'PUT' \
|
|
'https://greyn.club:8448/_matrix/client/v3/rooms/${env.MATRIX_ROOMID}/state/m.room.avatar' \
|
|
-H 'accept: application/json' \
|
|
-H 'authorization: Bearer ${env.JENKINSONMATRIXTOKEN}' \
|
|
-H 'Content-Type: application/json' \
|
|
-d '{
|
|
"url": "${env.avatarMXC}"
|
|
}'
|
|
""")
|
|
}
|
|
}
|
|
}
|
|
stage('credits'){
|
|
when { changeset "script artifacts/credits.txt"}
|
|
steps {
|
|
sh "/home/adam/iHateThis.sh morrowind"
|
|
}
|
|
}
|
|
}
|
|
}
|