Github仅在第一次推送时执行操作

Github仅在第一次推送时执行操作,github,github-actions,Github,Github Actions,我正在做一个github动作,在ArgoCD上创建一个应用程序。问题是我只想执行一次,第一次用k8s YAML推送它。 有没有办法将github操作限制为回购的第一次推送? 我一直在寻找github触发器,但没有找到任何关系 这是行动的一个例子: on: push name: deploy-argo-app jobs: deploy-argo-app: name: Deploy new app on ArgoCD runs-on: ubuntu-latest step

我正在做一个github动作,在ArgoCD上创建一个应用程序。问题是我只想执行一次,第一次用k8s YAML推送它。
有没有办法将github操作限制为回购的第一次推送?
我一直在寻找github触发器,但没有找到任何关系

这是行动的一个例子:

on: push
name: deploy-argo-app
jobs:
  deploy-argo-app:
    name: Deploy new app on ArgoCD
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@master
    - name: Install Argo Cli
      run: |
          VERSION=$(curl --silent "https://api.github.com/repos/argoproj/argo-cd/releases/latest" | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/')
          sudo curl -sSL -o /usr/local/bin/argocd https://github.com/argoproj/argo-cd/releases/download/$VERSION/argocd-linux-amd64
          sudo chmod +x /usr/local/bin/argocd
    - name: Create app
      run: | 
          argocd app create guestbook --repo https://github.com/argoproj/argocd-example-apps.git --path guestbook --dest-server https://kubernetes.default.svc --dest-namespace default

我找到了一种解决办法

on: push
name: deploy
jobs:
  deploy:
    if: github.run_number == 1

基本上,“github.run_number”给出了推送编号。它只在第一次推送时起作用,然后将被忽略。

我找到了一种解决方法

on: push
name: deploy
jobs:
  deploy:
    if: github.run_number == 1

基本上,“github.run_number”给出了推送编号。它只在第一次推送时起作用,然后将被忽略。

这不是使用推送的方式,但如果可以使用pull_请求事件,我认为在pull_请求类型中使用
open
是最可靠的方式。Ref:这不是使用push的方法,但是如果您可以使用pull_请求事件,我认为在pull_请求类型中使用
open
是最可靠的方法。裁判: