गितुब क्रिया पर वर्कफ़्लोज़ के बीच निर्भरता


9

मेरे पास दो वर्कफ़्लो के साथ एक मोनोरेपो है:

.github/workflows/test.yml

name: test

on: [push, pull_request]

jobs:
  test-packages:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - name: test packages
        run: |
          yarn install
          yarn test
...

.github/workflows/deploy.yml

  deploy-packages:
    runs-on: ubuntu-latest
    needs: test-packages
    steps:
      - uses: actions/checkout@v1
      - name: deploy packages
        run: |
          yarn deploy
        env:
          NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
...

यह काम नहीं करता है, मैं किसी अन्य वर्कफ़्लो में नौकरी का संदर्भ नहीं दे सकता:

### ERRORED 19:13:07Z

- Your workflow file was invalid: The pipeline is not valid. The pipeline must contain at least one job with no dependencies.

क्या वर्कफ़्लोज़ के बीच निर्भरता बनाने का एक तरीका है?

मैं जो चाहता हूं test.ymlउसे deploy.ymlटैग पर, और test.ymlकेवल पुश और पुल अनुरोध पर चलाना है । मैं वर्कफ़्लोज़ के बीच नौकरियों की नकल नहीं करना चाहता।

जवाबों:


4

क्या वर्कफ़्लोज़ के बीच निर्भरता बनाने का एक तरीका है?

मुझे नहीं लगता कि यह फिलहाल संभव है। शायद यह एक ऐसी सुविधा है जिसे वे भविष्य में जोड़ देंगे। व्यक्तिगत रूप से, मुझे लगता है कि यह अधिक संभावना है कि सर्किलसीआई के orbs जैसी सुविधा को वर्कफ़्लोज़ के सामान्य वर्गों को साझा करने के लिए जोड़ा जाएगा।

एक वैकल्पिक समाधान के लिए, क्या यह आपके लिए निम्नलिखित कार्य की तरह समान वर्कफ़्लो में रखता है? deploy-packagesकाम केवल एक टैग के साथ शुरू करता है, तो निष्पादित करेंगे vधक्का दिया जा रहा है।

name: my workflow
on: [push, pull_request]
jobs:
  test-packages:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - name: test packages
        run: echo "Running tests"
  deploy-packages:
    if: startsWith(github.ref, 'refs/tags/v')
    runs-on: ubuntu-latest
    needs: test-packages
    steps:
      - uses: actions/checkout@v1
      - name: deploy packages
        run: echo "Deploying packages"
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.