.drone.yml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. kind: pipeline
  2. name: build
  3. steps:
  4. - name: submodules
  5. image: docker:git
  6. commands:
  7. - git submodule update --init --recursive
  8. - name: build
  9. image: microsoft/dotnet:2-sdk
  10. commands:
  11. - dotnet publish --configuration release --output /release Jellyfin.Server
  12. - name: clone-dotnet-compat
  13. image: docker:git
  14. commands:
  15. - git clone --depth 1 https://github.com/EraYaN/dotnet-compatibility
  16. when:
  17. event:
  18. - pull_request
  19. - name: build-dotnet-compat
  20. image: microsoft/dotnet:2-sdk
  21. commands:
  22. - dotnet publish --runtime debian.9-x64 --configuration release --output /tools dotnet-compatibility/CompatibilityCheckerCoreCLI
  23. when:
  24. event:
  25. - pull_request
  26. - name: download-last-nuget-release-common
  27. image: plugins/download
  28. settings:
  29. source: https://www.nuget.org/api/v2/package/Jellyfin.Common
  30. destination: Jellyfin.Common.nupkg
  31. when:
  32. event:
  33. - pull_request
  34. - name: download-last-nuget-release-model
  35. image: plugins/download
  36. settings:
  37. source: https://www.nuget.org/api/v2/package/Jellyfin.Model
  38. destination: Jellyfin.Model.nupkg
  39. when:
  40. event:
  41. - pull_request
  42. - name: download-last-nuget-release-controller
  43. image: plugins/download
  44. settings:
  45. source: https://www.nuget.org/api/v2/package/Jellyfin.Controller
  46. destination: Jellyfin.Controller.nupkg
  47. when:
  48. event:
  49. - pull_request
  50. - name: download-last-nuget-release-naming
  51. image: plugins/download
  52. settings:
  53. source: https://www.nuget.org/api/v2/package/Jellyfin.Naming
  54. destination: Jellyfin.Naming.nupkg
  55. when:
  56. event:
  57. - pull_request
  58. - name: extract-downloaded-nuget-packages
  59. image: garthk/unzip
  60. commands:
  61. - unzip -j Jellyfin.Common.nupkg "*.dll" -d /current-release
  62. - unzip -j Jellyfin.Model.nupkg "*.dll" -d /current-release
  63. - unzip -j Jellyfin.Controller.nupkg "*.dll" -d /current-release
  64. - unzip -j Jellyfin.Naming.nupkg "*.dll" -d /current-release
  65. when:
  66. event:
  67. - pull_request
  68. - name: run-dotnet-compat-common
  69. image: debian:stretch
  70. err_ignore: true
  71. commands:
  72. - /tools/CompatibilityCheckerCoreCLI /current-release/Jellyfin.Common.dll /release/Jellyfin.Common.dll
  73. when:
  74. event:
  75. - pull_request
  76. - name: run-dotnet-compat-model
  77. image: debian:stretch
  78. err_ignore: true
  79. commands:
  80. - /tools/CompatibilityCheckerCoreCLI /current-release/Jellyfin.Model.dll /release/Jellyfin.Model.dll
  81. when:
  82. event:
  83. - pull_request
  84. - name: run-dotnet-compat-controller
  85. image: debian:stretch
  86. err_ignore: true
  87. commands:
  88. - /tools/CompatibilityCheckerCoreCLI /current-release/Jellyfin.Controller.dll /release/Jellyfin.Controller.dll
  89. when:
  90. event:
  91. - pull_request
  92. - name: run-dotnet-compat-naming
  93. image: debian:stretch
  94. err_ignore: true
  95. commands:
  96. - /tools/CompatibilityCheckerCoreCLI /current-release/Jellyfin.Naming.dll /release/Jellyfin.Naming.dll
  97. when:
  98. event:
  99. - pull_request