aboutsummaryrefslogtreecommitdiff
path: root/.onedev-buildspec.yml
diff options
context:
space:
mode:
Diffstat (limited to '.onedev-buildspec.yml')
-rw-r--r--.onedev-buildspec.yml108
1 files changed, 94 insertions, 14 deletions
diff --git a/.onedev-buildspec.yml b/.onedev-buildspec.yml
index 8049766..8bbe9c7 100644
--- a/.onedev-buildspec.yml
+++ b/.onedev-buildspec.yml
@@ -1,6 +1,6 @@
-version: 33
+version: 36
jobs:
-- name: GitHub Push
+- name: Git mirror push
steps:
- !PushRepository
name: Github push sync
@@ -25,22 +25,102 @@ jobs:
maxRetries: 3
retryDelay: 30
timeout: 3600
-- name: GitHub Pull
+
+- name: Unit Testing
steps:
- - !PullRepository
- name: GitHub sync pull
- remoteUrl: https://github.com/VnUgE/noscrypt.git
- userName: VnUgE
- passwordSecret: github-access-token
- refs: refs/heads/* refs/tags/*
+ - !CheckoutStep
+ name: checkout
+ cloneCredential: !DefaultCredential {}
withLfs: false
- force: false
+ withSubmodules: false
+ checkoutPath: '@project_name@'
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ - !CommandStep
+ name: run unit tests
+ runInContainer: false
+ interpreter: !DefaultInterpreter
+ commands: |
+ cd @project_name@
+ task -t Module.Taskfile.yaml test
+ useTTY: true
condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
triggers:
- - !ScheduleTrigger
- cronExpression: 0 15 10 ? * *
- projects: noscrypt
+ - !BranchUpdateTrigger
+ branches: '** -master'
retryCondition: never
maxRetries: 3
retryDelay: 30
- timeout: 3600
+ timeout: 14400
+- name: Staging build
+ steps:
+ - !CheckoutStep
+ name: checkout
+ cloneCredential: !DefaultCredential {}
+ withLfs: false
+ withSubmodules: false
+ checkoutPath: '@project_name@'
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ - !CommandStep
+ name: VNBuild build
+ runInContainer: false
+ interpreter: !DefaultInterpreter
+ commands: |
+ vnbuild build -S --verbose
+ useTTY: true
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ - !CommandStep
+ name: VNBuild mock publish
+ runInContainer: false
+ interpreter: !DefaultInterpreter
+ commands: |
+ vnbuild publish --sign
+ useTTY: true
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ triggers:
+ - !BranchUpdateTrigger
+ branches: develop master
+ jobDependencies:
+ - jobName: Unit Testing
+ requireSuccessful: true
+ retryCondition: never
+ maxRetries: 3
+ retryDelay: 30
+ timeout: 14400
+
+- name: Publish on tag
+ steps:
+ - !CheckoutStep
+ name: checkout
+ cloneCredential: !DefaultCredential {}
+ withLfs: false
+ withSubmodules: false
+ checkoutPath: '@project_name@'
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ - !CommandStep
+ name: VNBuild build
+ runInContainer: false
+ interpreter: !DefaultInterpreter
+ commands: |
+ vnbuild build -S --verbose
+ useTTY: true
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ - !CommandStep
+ name: VNBuild publish
+ runInContainer: false
+ interpreter: !DefaultInterpreter
+ commands: |
+ vnbuild publish --ftp "@secret:ftp_server_address@" --sign
+ envVars:
+ - name: FTP_USERNAME
+ value: '@secret:ftp_username@'
+ - name: FTP_PASSWORD
+ value: '@secret:ftp_password@'
+ useTTY: true
+ condition: ALL_PREVIOUS_STEPS_WERE_SUCCESSFUL
+ triggers:
+ - !TagCreateTrigger
+ branches: master
+ retryCondition: never
+ maxRetries: 3
+ retryDelay: 30
+ timeout: 14400