diff options
Diffstat (limited to '.onedev-buildspec.yml')
-rw-r--r-- | .onedev-buildspec.yml | 108 |
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 |