Artifact در مهندسی نرم‌افزار به خروجی تولیدشده در یک فرایند گفته می‌شود. فایل اجرایی، بسته NPM، JAR، Wheel پایتون، بسته PHP، گزارش تست، SBOM و ایمیج کانتینر می‌توانند آرتیفکت باشند. بنابراین آرتیفکت فقط به فایل باینری محدود نیست.

مرحلهمثال آرتیفکتمصرف‌کننده
Buildفایل JAR یا تصویر کانتینرپایپ‌لاین استقرار
Testگزارش JUnit XML یا Coverageداشبورد CI
SecuritySBOM و گزارش اسکنتیم امنیت
Releaseفایل ZIP یا بسته نسخه‌دارکاربر یا سرور

مثال در GitHub Actions

- name: Upload test report
  uses: actions/upload-artifact@v4
  with:
    name: test-report
    path: reports/junit.xml

تفاوت با سورس کد

آرتیفکت معمولاً خروجی قابل نگهداری، انتشار یا بازتولید است، در حالی که سورس کد ورودی فرایند ساخت محسوب می‌شود. برای ردیابی زنجیره تامین، آرتیفکت باید با Commit و Build مشخص مرتبط باشد.

اصطلاحات مرتبط: یکپارچه‌سازی و تحویل/استقرار مداوم، فهرست اجزای نرم‌افزار، ایمیج داکر، زنجیره تامین نرم‌افزار، ورژنینگ.