新增 Gitlab CI
47
Gitlab-CI.md
Normal file
47
Gitlab-CI.md
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
# 安裝 Gitlab Runner
|
||||||
|
# 安裝 IIS,建立應用程式集{pool_name},建立應用程式站台{site_name}
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
variables:
|
||||||
|
# 拉取子模組
|
||||||
|
GIT_SUBMODULE_STRATEGY: recursive
|
||||||
|
GIT_SUBMODULE_FORCE_HTTPS: "true"
|
||||||
|
# 拉取第一層子模組
|
||||||
|
GIT_SUBMODULE_DEPTH: 1
|
||||||
|
|
||||||
|
stages:
|
||||||
|
- build
|
||||||
|
- deploy
|
||||||
|
|
||||||
|
build:
|
||||||
|
stage: build
|
||||||
|
script:
|
||||||
|
- dotnet restore
|
||||||
|
- dotnet publish -c [Debug or Release] -o ..\Build\{project_name}
|
||||||
|
only:
|
||||||
|
- master
|
||||||
|
tag:
|
||||||
|
- windows
|
||||||
|
- [development or production]
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
stage: deploy
|
||||||
|
script:
|
||||||
|
- $NOW=Get-Date -Format "yyyy.MM.dd.HH.mm.ss"
|
||||||
|
# 停止服務
|
||||||
|
- C:\Windows\System32\inetsrv\appcmd.exe stop site "{site_name}"
|
||||||
|
- C:\Windows\System32\inetsrv\appcmd.exe stop apppool /apppool.name:"{pool_name}"
|
||||||
|
# 第一次部屬過後,這段才能執行,將應用程式移動到備份資料夾
|
||||||
|
- mv "C:\inetpub\wwwroot\{project_name}" "..\Backup\{project_name}.$NOW" -Recurse
|
||||||
|
# 將編譯後的應用程式複製到部屬資料夾
|
||||||
|
- cp "..\Build\{project_name}" "C:\inetpub\wwwroot\{project_name}" -Recurse
|
||||||
|
# 啟動服務
|
||||||
|
- C:\Windows\System32\inetsrv\appcmd.exe start apppool /apppool.name:"{pool_name}"
|
||||||
|
- C:\Windows\System32\inetsrv\appcmd.exe start site "{site_name}"
|
||||||
|
only:
|
||||||
|
- master
|
||||||
|
tag:
|
||||||
|
- windows
|
||||||
|
- [development or production]
|
||||||
|
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user