codesee-arch-diagram.yml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. on:
  2. push:
  3. branches:
  4. - main
  5. pull_request_target:
  6. types: [opened, synchronize, reopened]
  7. name: CodeSee Map
  8. jobs:
  9. test_map_action:
  10. runs-on: ubuntu-latest
  11. continue-on-error: true
  12. name: Run CodeSee Map Analysis
  13. steps:
  14. - name: checkout
  15. id: checkout
  16. uses: actions/checkout@v2
  17. with:
  18. repository: ${{ github.event.pull_request.head.repo.full_name }}
  19. ref: ${{ github.event.pull_request.head.ref }}
  20. fetch-depth: 0
  21. # codesee-detect-languages has an output with id languages.
  22. - name: Detect Languages
  23. id: detect-languages
  24. uses: Codesee-io/codesee-detect-languages-action@latest
  25. - name: Configure JDK 16
  26. uses: actions/setup-java@v2
  27. if: ${{ fromJSON(steps.detect-languages.outputs.languages).java }}
  28. with:
  29. java-version: '16'
  30. distribution: 'zulu'
  31. # CodeSee Maps Go support uses a static binary so there's no setup step required.
  32. - name: Configure Node.js 14
  33. uses: actions/setup-node@v2
  34. if: ${{ fromJSON(steps.detect-languages.outputs.languages).javascript }}
  35. with:
  36. node-version: '14'
  37. - name: Configure Python 3.x
  38. uses: actions/setup-python@v4.2.0
  39. if: ${{ fromJSON(steps.detect-languages.outputs.languages).python }}
  40. with:
  41. python-version: '3.10'
  42. architecture: 'x64'
  43. - name: Configure Ruby '3.x'
  44. uses: ruby/setup-ruby@v1
  45. if: ${{ fromJSON(steps.detect-languages.outputs.languages).ruby }}
  46. with:
  47. ruby-version: '3.0'
  48. # We need the rust toolchain because it uses rustc and cargo to inspect the package
  49. - name: Configure Rust 1.x stable
  50. uses: actions-rs/toolchain@v1
  51. if: ${{ fromJSON(steps.detect-languages.outputs.languages).rust }}
  52. with:
  53. toolchain: stable
  54. - name: Generate Map
  55. id: generate-map
  56. uses: Codesee-io/codesee-map-action@latest
  57. with:
  58. step: map
  59. api_token: ${{ secrets.CODESEE_ARCH_DIAG_API_TOKEN }}
  60. github_ref: ${{ github.ref }}
  61. languages: ${{ steps.detect-languages.outputs.languages }}
  62. - name: Upload Map
  63. id: upload-map
  64. uses: Codesee-io/codesee-map-action@latest
  65. with:
  66. step: mapUpload
  67. api_token: ${{ secrets.CODESEE_ARCH_DIAG_API_TOKEN }}
  68. github_ref: ${{ github.ref }}
  69. - name: Insights
  70. id: insights
  71. uses: Codesee-io/codesee-map-action@latest
  72. with:
  73. step: insights
  74. api_token: ${{ secrets.CODESEE_ARCH_DIAG_API_TOKEN }}
  75. github_ref: ${{ github.ref }}