Просмотр исходного кода

Fix new amap workflow (#2151)

* Fix amap workflow
* get_env.py
* Fix amap_analyse.yml
Max Andreev 3 лет назад
Родитель
Сommit
ef7052fbad
3 измененных файлов с 31 добавлено и 6 удалено
  1. 12 2
      .github/workflows/amap_analyse.yml
  2. 12 2
      .github/workflows/build.yml
  3. 7 2
      scripts/get_env.py

+ 12 - 2
.github/workflows/amap_analyse.yml

@@ -24,6 +24,16 @@ jobs:
         with:
           fetch-depth: 0
 
+      - name: 'Get commit details'
+        run: |
+          export COMMIT_HASH=${{ github.event.client_payload.commit_hash }}
+          export COMMIT_MSG=${{ github.event.client_payload.commit_msg }}
+          export BRANCH_NAME=${{ github.event.client_payload.branch_name }}
+          if [[ ${{ github.event.client_payload.event_type }}  == "pr" ]]; then
+              export PULL_ID=${{ github.event.client_payload.pull_id }}
+              export PULL_NAME=${{ github.event.client_payload.pull_name }}
+          fi
+
       - name: 'Make artifacts directory'
         run: |
           rm -rf artifacts
@@ -43,7 +53,7 @@ jobs:
       - name: 'Make .map file analyze'
         run: |
           cd artifacts/
-          /Applications/amap/Contents/MacOS/amap -f "flipper-z-f7-firmware-${SUFFIX}.elf.map"
+          /Applications/amap/Contents/MacOS/amap -f flipper-z-f7-firmware-${{ github.event.client_payload.suffix }}.elf.map
 
       - name: 'Upload report to DB'
         run: |
@@ -67,5 +77,5 @@ jobs:
             ${{ secrets.AMAP_MARIADB_HOST }} \
             ${{ secrets.AMAP_MARIADB_PORT }} \
             ${{ secrets.AMAP_MARIADB_DATABASE }} \
-            artifacts/flipper-z-f7-firmware-$SUFFIX.elf.map.all
+            artifacts/flipper-z-f7-firmware-${{ github.event.client_payload.suffix }}.elf.map.all
 

+ 12 - 2
.github/workflows/build.yml

@@ -99,12 +99,22 @@ jobs:
           rm ./deploy_key;
 
       - name: 'Trigger map file analyser'
-        if: ${{ !github.event.pull_request.head.repo.fork }}
+        if: ${{ (github.event_name != 'pull_request')
+            && !github.event.pull_request.head.repo.fork }}
+        uses: peter-evans/repository-dispatch@v2
+        with:
+          token: ${{ secrets.GITHUB_TOKEN }}
+          event-type: make_map_analyse
+          client-payload: '{"branch_name": "${{steps.names.outputs.branch_name}}", "commit_hash": "${{steps.names.outputs.commit_hash}}", "commit_msg": "${{steps.names.outputs.commit_msg}}", "event_type": "push"}'
+
+      - name: 'Trigger map file analyser'
+        if: ${{ (github.event_name == 'pull_request')
+            && !github.event.pull_request.head.repo.fork }}
         uses: peter-evans/repository-dispatch@v2
         with:
           token: ${{ secrets.GITHUB_TOKEN }}
           event-type: make_map_analyse
-          client-payload: '{"branch_name": "${{steps.names.outputs.branch_name}}"}'
+          client-payload: '{"branch_name": "${{steps.names.outputs.branch_name}}", "commit_hash": "${{steps.names.outputs.commit_hash}}", "commit_msg": "${{steps.names.outputs.commit_msg}}", "pull_id": "${{steps.names.outputs.pull_id}}", "pull_name": "${{steps.names.outputs.pull_name}}", "event_type": "pr"}'
 
       - name: 'Trigger update server reindex'
         if: ${{ !github.event.pull_request.head.repo.fork }}

+ 7 - 2
scripts/get_env.py

@@ -89,13 +89,18 @@ def add_envs(data, gh_env_file, gh_out_file, args):
     add_env("BRANCH_NAME", data["branch_name"], gh_env_file)
     add_env("DIST_SUFFIX", data["suffix"], gh_env_file)
     add_env("WORKFLOW_BRANCH_OR_TAG", data["branch_name"], gh_env_file)
-    add_set_output_var("branch_name", data["branch_name"], gh_out_file)
+    add_set_output_var("commit_msg", data["commit_comment"], gh_out_file)
+    add_set_output_var("commit_hash", data["commit_hash"], gh_out_file)
     add_set_output_var("commit_sha", data["commit_sha"], gh_out_file)
-    add_set_output_var("default_target", os.getenv("DEFAULT_TARGET"), gh_out_file)
     add_set_output_var("suffix", data["suffix"], gh_out_file)
+    add_set_output_var("branch_name", data["branch_name"], gh_out_file)
+    add_set_output_var("dist_suffix", data["suffix"], gh_out_file)
+    add_set_output_var("default_target", os.getenv("DEFAULT_TARGET"), gh_out_file)
     if args.type == "pull":
         add_env("PULL_ID", data["pull_id"], gh_env_file)
         add_env("PULL_NAME", data["pull_name"], gh_env_file)
+        add_set_output_var("pull_id", data["pull_id"], gh_out_file)
+        add_set_output_var("pull_name", data["pull_name"], gh_out_file)
 
 
 def main():