GitHub اقدامات GitHub را معرفی کرده است که به شما امکان می دهد با استفاده از یک فایل پیکربندی درست در repo github خود ، ادغام مداوم و استقرار مداوم را تنظیم کنید.

آموزش اقدامات GitHub

بررسی اجمالی

یکی از بهترین راه های افزایش بهره وری در یک پروژه نرم افزاری ، خودکار سازی هر چیزی دستی یا تکراری است. و ممکن است شما از اجرای آسان اتوماسیون هنگام استفاده از یک ابزار عالی مانند اقدامات GitHub شگفت زده شوید. از چند مقاله اخیر ، من در مورد git ، کنترل نسخه و اتوماسیون گردش کار توسعه نرم افزار و درباره [ادغام مداوم و تحویل مداوم] می نویسم 3 . بنابراین امیدوارم که تاکنون ، شما به خوبی از مخازن و نحوه استفاده از آنها آگاه باشید. در آموزش امروز GitHub Actions ، ما در حال بررسی اقدامات GitHub خواهیم بود ، و اینکه چگونه می توانید از آن برای اتوماسیون برنامه ، سفارشی سازی و اجرای گردش کار توسعه نرم افزار خود درست در مخزن خود استفاده کنید. بنابراین ، بیایید شروع کنیم

گردش کار CI/CD

CI/CD روشی برای استقرار مکرر پروژه های توسعه نرم افزار شما به کاربران نهایی در مراحل مختلف با کمک اتوماسیون است. ادغام مداوم و استقرار مداوم بیشتر یک فلسفه و یکی از بهترین شیوه های تیم های DevOps برای اجرای ، برای ارائه تغییرات کد به طور مکرر و قابل اعتماد است. ادغام مداوم مجموعه ای از شیوه ها است که تیم های توسعه را ترغیب می کند تا به طور مکرر کد را به مخازن کنترل نسخه بررسی کنند. و برای هر فشار به مخزن ، می توانید مجموعه ای از اسکریپت ها را برای ساخت و تست خودکار برنامه خود ایجاد کنید. این اسکریپت ها به کاهش احتمال بروز خطاها در برنامه خود کمک می کنند. استقرار مداوم گامی در گردش کار CI/CD شما است. این برنامه نه تنها برنامه شما را ساخته و آزمایش می کند هر بار که تغییر کد به پایگاه کد منتقل می شود ، بلکه برنامه نیز به طور مداوم به سرور شما مستقر می شود.

اقدامات GitHub چیست

در بخش این آموزش اقدامات GitHub ، ما خواهیم فهمید که اقدامات GitHub چیست. با این حال ، اقدامات GitHub یک API برای علت و تأثیر در GitHub است. این امر باعث می شود که تمام گردش کار نرم افزاری خود را با CI/CD خودکار کنید. شما می توانید هر گردش کار را بر اساس هر رویدادی به عنوان مثال (فشار به یک شعبه ، درخواست کشش و غیره) طراحی کنید ، در حالی که GitHub مدیریت را انجام می دهد. با این حال ، نیازی به نوشتن اقدامات توسط خودتان نیست. GitHub دارای یک بازار داخلی است که در آن افراد می توانند اقدامات ایجاد شده توسط افراد دیگر را پیدا کنند و در صورت متناسب با نیازهای آنها از آنها استفاده مجدد کنند. اقدامات GitHub از Node.js ، پایتون ، جاوا ، روبی ، PHP ، GO ، Rust ، .net و موارد دیگر پشتیبانی می کند. برنامه ها را به زبان مورد نظر خود بسازید ، آزمایش و مستقر کنید.

نحو yaml

بیایید ابتدا با نحو و اصطلاحات اقدامات github آشنا شویم. گردش کار: از آنجا که اقدام GitHub امکان ساخت یکپارچه سازی پایان به پایان** و استقرار مداوم**را فراهم می کند ، این اصطلاح به آن نقطه اشاره می کند که جریان شروع به اجرای ابزار CI می کند.

  • شغل : این اصطلاح به کلیه وظایف در یک گردش کار واحد اشاره دارد. یک گردش کار حاوی بیش از یک کار است و برای همه آنها لازم است که اجرای خود را برای جلوگیری از خرابی انجام دهند.
  • مرحله: برای یک کار برای تکمیل اجرای خود ، باید تمام مراحل تعبیه شده در آن را انجام دهد.
  • عمل: عمل زیر مجموعه اصلی مرحله و کوچکترین زیر مجموعه گردش کار است. هر مرحله شامل چندین اقدام است که باید با موفقیت اجرا شود. همانطور که می بینید گردش کار ، شغلی ، مرحله و عمل به هم وابسته هستند و اجرای موفقیت آمیز همه چیز برای تکمیل موفقیت آمیز خط لوله CI/CD ضروری است.

یک گردش کار ایجاد کنید

در یک پروژه توسعه نرم افزار ، یکی از مشکلات تیم های توسعه با آن ، قالب کد منبع و بهترین اجرای عمل است. این مشکل برای تیم های بزرگتر آشکارتر است. از آنجا که آنها توسعه دهندگان بیشتری را درگیر می کنند و همه سبک های نوشتن خود را دارند. بنابراین استفاده از بسته های آستر در تیم ها بسیار متداول است. اما اکنون با اقدامات github ، شما می توانید هر بار که کسی کد را به سمت repo github سوق دهد ، می توانید خط را اجرا کنید. در این آموزش Action GitHub ، یک گردش کار اضافه می کنید که چندین زبان برنامه نویسی را با استفاده از عمل GitHub Super-Enter به وجود می آورد. گردش کار از Super-Enter برای تأیید کد منبع شما استفاده می کند هر بار که یک تعهد جدید به مخزن شما منتقل می شود. از مخزن خود در GitHub ، یک پرونده جدید را در فهرست Github/Workflowsبه نامSuperlinter.yml ایجاد کنید و محتوای زیر را در آن کپی کنید

name: Super-Linter

# Run this workflow every time a new commit pushed to your repository
on: push

jobs:
  # Set the job key. The key is displayed as the job name
  # when a job name is not provided
  super-lint:
    # Name the Job
    name: Lint code base
    # Set the type of machine to run on
    runs-on: ubuntu-latest

    steps:
      # Checks out a copy of your repository on the ubuntu-latest machine
      - name: Checkout code
        uses: actions/checkout@v2

      # Runs the Super-Linter action
      - name: Run Super-Linter
        uses: github/super-linter@v3
        env:
          DEFAULT_BRANCH: main
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

برای اجرای گردش کار خود ، متعهد و فشار به مخزن GitHub خود را انجام دهید. این رویداد فشار باعث گردش کار Superlinter می شود. و اکنون می توانید نتایج گردش کار خود را با ورود به برگه عمل مشاهده کنید

آموزش اقدامات GitHub

در نوار کناری سمت چپ ، روی گردش کاری که می خواهید ببینید کلیک کنید.

گردش کار اقدامات GitHub

گردش کار فوق العاده ای که به تازگی اضافه کرده اید هر بار که کد به مخزن شما منتقل می شود تا به شما در یافتن مشکلات موجود در کد خود کمک کند. مخزن شما می تواند دارای چندین گردش کار باشد که بر اساس وقایع مختلف باعث ایجاد مشاغل مختلف می شود. اقدامات GitHub می تواند به شما کمک کند تقریباً هر جنبه ای از فرآیندهای توسعه برنامه خود را خودکار کنید. این فقط یک مقدمه اساسی برای اقدامات GitHub بود. تعداد منابع برای دانش عمیق در مورد اقدامات GitHub وجود دارد ، که می توانید از آنها استفاده کنید.

نتیجه

در این آموزش GitHub Actions، ما در مورد ادغام مداوم و استقرار مداوم و اقدامات GitHub آموخته ایم. و ما همچنین بررسی کردیم که چگونه می توانیم از اقداماتGitHub برای ساخت یک گردش کار CI/CD استفاده کنیم. ما از یک گردش کار فوق العاده ساده و ساده از بازار اقدامات GitHub استفاده کردیم تا هرگونه ناسازگاری در پایگاه کد خود را پیدا کنیم. در مقالات آینده ، ما اقدامات GitHub را با عمق بیشتری بررسی خواهیم کرد. علاوه بر این ، می توانید سایر پست های وبلاگ مربوط به سیستم کنترل نسخه****ذکر شده در بخش “اکتشاف” را در زیر پیدا کنید. سرانجام ، Containerize.com به طور مداوم در حال نوشتن پست های وبلاگ در مورد محصولات و موضوعات منبع باز بیشتر است. بنابراین ، لطفاً برای به روزرسانی های منظم با گروه نرم افزار کنترل نسخه در تماس باشید. علاوه بر این ، شما می توانید ما را در حساب های رسانه های اجتماعی Facebook ، LinkedIn و Twitter دنبال کنید.

کاوش کنید

ممکن است پیوندهای زیر مربوطه را پیدا کنید: