
GitHub Actions თუ GitLab CI: იაფ წუთს გუნდის აბონემენტი შეიძლება აჯობოს

ღია რეპოზიტორიის სტანდარტული build-ებისთვის GitHub Actions ჩვეულებრივ იაფია, რადგან GitHub-hosted runner-ის წუთები საჯარო პროექტში უფასოა. კერძო გუნდისთვის პასუხი იცვლება: GitHub-ის ტარიფებში Free გეგმას თვეში 2 000 ჩართული წუთი აქვს, Team-ს — 3 000, ხოლო Team-ის გამოქვეყნებული ფასი მომხმარებელზე თვეში 4 დოლარია. ამიტომ ფასიანი ადგილის ღირებულება შეიძლება წუთებზე დაზოგილ თანხას გადააჭარბოს.
GitLab CI-ის შემთხვევაში იმავე build-ების ხანგრძლივობა პირდაპირ გადასახდელ წუთებს არ უდრის. GitLab-ის compute-წუთების წესით GitLab.com Free-ის თვიური კვოტა 400 წუთია, ხოლო ყოველი job-ის მოხმარება მის ხანგრძლივობას runner-ის კოეფიციენტზე გამრავლებით ითვლება. კვოტა ზედა დონის ჯგუფს ან პირად სივრცეს ეკუთვნის, ამიტომ სხვადასხვა რეპოზიტორიის პარალელური სამუშაოც მას ერთობლივად ხარჯავს.
ფასის მოდელი: სამუშაოს დრო, კვოტა და ადგილები
საწყისი ერთეული ერთი job-ის რეალური შესრულების დროა. თუ pipeline რამდენიმე სამუშაოს პარალელურად უშვებს, მათი წუთები ჯამდება; მხოლოდ pipeline-ის დაწყებასა და დასრულებას შორის გასული დრო ხარჯს ვერ ასახავს. ქვემოთ ყველა სცენარი პირობითია: ერთი build ერთი ათწუთიანი Linux job-ია, სამუშაო სრულ ათ წუთს გრძელდება და სტანდარტულ hosted runner-ზე სრულდება. ამ დაშვებით GitHub-ის Linux წუთი და GitLab-ის საბაზისო Linux compute-წუთი უშუალოდ შესადარებელია.
GitHub Actions-ის ბილინგის წესებში სტანდარტული ორბირთვიანი Linux runner-ის კვოტის ზემოთ ფასი წუთში 0,006 დოლარია, Windows-ის — 0,010, macOS-ის — 0,062. კერძო რეპოზიტორიის ანგარიში ასე იშლება: გამოწერის ფასი, ჩართული კვოტის ზემოთ მოხმარებული runner-წუთები და, საჭიროების შემთხვევაში, შენახვა. GitHub-ის ქეშს თითო რეპოზიტორიაზე ცალკე 10 GB ჩართული ადგილი აქვს; ლიმიტის გაზრდისას ზედმეტი შენახვა 0,07 დოლარად ირიცხება GB-თვეში.
GitLab-ის ტარიფებში Free გეგმა ზედა დონის ჯგუფში ხუთ მომხმარებელს მოიცავს. Premium-ის ფასი მომხმარებელზე თვეში 29 დოლარია წლიური გადახდით, ხოლო მისი 10 000 compute-წუთი ჯგუფის საერთო თვიური კვოტაა და თითოეულ წევრს ცალკე არ ეძლევა. ამიტომ Premium-ის წუთობრივი მარაგი GitHub Team-ს ადგილების საფასურის გათვალისწინებით უნდა შეედაროს.
GitLab-ის კვოტის ზემოთ წუთები უწყვეტი ტარიფით არ ირიცხება. დამატებითი compute-წუთების პირობებით 1 000-წუთიანი პაკეტი 10 დოლარი ღირს, შეძენილი წუთები 12 თვე მოქმედებს და ავტომატურად არ ახლდება. გამოუყენებელი შეძენილი წუთი მომდევნო თვეში გადადის, ხოლო ჩვეულებრივი საჯარო პროექტიც კვოტას ექვემდებარება. კვოტის ამოწურვისას GitLab-ის hosted runner ახალ სამუშაოებს ვეღარ იღებს, სანამ დამატებითი წუთები არ იქნება შეძენილი ან თვიური კვოტა არ განახლდება.
ღია პროექტი: საჯარო რეპოზიტორიის ფასი
პირობითმა ღია პროექტმა თვეში 100 build გაუშვას. თითოეულის ათწუთიანი Linux job ჯამში 1 000 სამუშაო წუთს ქმნის. GitHub Actions-ის სტანდარტულ hosted runner-ზე მათი წუთობრივი გადასახადი ნულია. GitLab.com Free-ზე საბაზისო Linux runner-ის კოეფიციენტი ერთია, ამიტომ 400 წუთი კვოტაში ჩაეტევა, დარჩენილი 600-ისთვის კი ერთი დამატებითი პაკეტი იქნება საჭირო: პირველ თვეში 10 დოლარი გადაიხდება და 400 შეძენილი წუთი დარჩება.
საჯარო პროექტს GitLab-ზე შეიძლება შეღავათი ეკუთვნოდეს მხოლოდ კონკრეტული პროგრამის პირობებში. GitLab for Open Source-ში დაშვებულ პროექტებზე შეღავათიანი კოეფიციენტი მოქმედებს, მაგრამ უბრალოდ საჯარო რეპოზიტორია ამ სტატუსს არ ნიშნავს. ზემოთ გამოთვლილი 10 დოლარი ჩვეულებრივ საჯარო პროექტს ეხება. შეძენილი წუთების ნაშთმა მომდევნო თვის გადახდა შეიძლება შეამციროს, ამიტომ პირველი თვის თანხა მუდმივ ყოველთვიურ გადასახადად არ უნდა ჩაითვალოს.
მცირე კერძო გუნდი: როცა ადგილი წუთზე ძვირია
ავიღოთ პირობითი ხუთკაციანი გუნდი და თვეში იგივე 100 ათწუთიანი Linux build. GitHub Free-ის 2 000 წუთში მთელი დატვირთვა ეტევა, ამიტომ Actions-ის წუთობრივი გადასახადი ნულია. GitLab Free-ზე 1 000 compute-წუთიდან 600 კვოტის გარეთ რჩება და საწყის თვეში ერთი 10-დოლარიანი პაკეტი სჭირდება. ამ მაგალითში მხოლოდ CI-ის მოცულობა ფასიან გეგმაზე გადასვლას არც ერთ მხარეს არ მოითხოვს.
თუ გუნდს ფასიანი თანამშრომლობის ფუნქციები სჭირდება, ადგილების რაოდენობა ცალკე საბიუჯეტო გადაწყვეტილებაა. ხუთი GitHub Team ადგილი გამოქვეყნებული ფასით თვეში 20 დოლარს უდრის; ხუთი GitLab Premium ადგილი კი წლიური ხელშეკრულების თვიურ ეკვივალენტში 145 დოლარია. ორივე გეგმაში პირობითი 1 000 წუთი ჩართულ კვოტაში რჩება. Premium-ის უფრო დიდი კვოტა ამ დატვირთვაზე ადგილების ფასში 125-დოლარიან სხვაობას ვერ ანაზღაურებს; მისი მართვის, მხარდაჭერისა და CI/CD შესაძლებლობების საჭიროება ცალკე უნდა შეფასდეს.
დღეში 50 build: მოცულობის ზრდის შედეგი
დავუშვათ, გუნდი 30 დღის განმავლობაში ყოველდღე 50 ათწუთიან Linux build-ს ასრულებს. ეს თვეში 1 500 job და 15 000 სამუშაო წუთია. GitHub Free-ზე ჩართული 2 000 წუთის შემდეგ რჩება 13 000 გადასახდელი წუთი, ანუ 78 დოლარი. ხუთკაციანი GitHub Team-ის 3 000 წუთის შემდეგ რჩება 12 000 წუთი, რომლის ფასი 72 დოლარია; 20-დოლარიანი ადგილებით ჯამი 92 დოლარს აღწევს.
GitLab Free-ზე 400-წუთიანი კვოტის შემდეგ 14 600 compute-წუთი რჩება. პირველ თვეში ამისთვის 15 პაკეტის შეძენა, ანუ 150 დოლარია საჭირო, ხოლო შეძენილი წუთებიდან 400 შემდეგი თვისთვის დარჩება. GitLab Premium-ზე ჩართული 10 000 წუთის შემდეგ ხუთი პაკეტი ფარავს დარჩენილ 5 000 წუთს: დამატებით 50 დოლარი. ხუთი ადგილის 145-დოლარიან თვიურ ეკვივალენტთან ერთად მოდელის ჯამია 195 დოლარი; Premium-ის ადგილებისთვის გადახდა წლიური პირობით ხდება.
ეს რიცხვები ერთი თვის თანაბარ დატვირთვას ასახავს. GitLab-ის შეძენილი წუთების ნაშთი შემდეგ თვეებში პაკეტების ყიდვის დროს შეცვლის, მაგრამ Premium-ის ადგილების ფასს არ შეამცირებს. თუ გუნდის სამუშაოს მოცულობა სეზონურად მერყეობს, დატვირთული თვის პაკეტების რაოდენობა ავტომატურად წლიურ ხარჯად ვერ გადაიქცევა. მხოლოდ წუთობრივი შედარება ასევე ვერ აფასებს, რომელ პლატფორმაზეა გუნდისთვის საჭირო მართვის ფუნქციები.
macOS, ქეში და საკუთარი runner: როდის იცვლება შედარება
Linux-ის გამოთვლას macOS build-ზე პირდაპირ ვერ გადაიტანთ. GitHub-ის სტანდარტულ macOS runner-ზე კვოტის ზემოთ 1 000 რეალური წუთი 62 დოლარი ღირს, მაშინ როცა იმავე მოცულობის Linux დრო 6 დოლარი იქნებოდა. GitLab.com-ის macOS M1 hosted runner ბეტა სტატუსითაა მოცემული და კოეფიციენტი ექვსია: კვოტის ზემოთ 1 000 რეალური წუთი 6 000 compute-წუთად იქცევა, რაც ექვს 10-დოლარიან პაკეტს მოითხოვს. ეს ბილინგის შედარებაა; სხვადასხვა მანქანაზე ერთი და იმავე job-ის შესრულების დრო შეიძლება განსხვავდებოდეს.
ქეშის გავლენა ორჯერ ჩანს. განმეორებით ჩამოსატვირთი დამოკიდებულებების შემცირებამ job შეიძლება დააჩქაროს, მაგრამ ქეშის ატვირთვასა და აღდგენასაც დრო სჭირდება. GitHub-ის შემთხვევაში გაზრდილი ქეშის ადგილის ხარჯი runner-ის წუთებს ცალკე ემატება. GitLab-ზე საკუთარი runner-ის ქეშის საცავისა და მონაცემთა გადაცემის ხარჯს თვითონ გუნდი ატარებს. ამიტომ რეალური შედარებისთვის თითოეულ ოპერაციულ სისტემაზე გაზომილი job-ის დრო გამოიყენება, შენახვა კი ცალკე სტრიქონად ემატება.
საკუთარი runner ორივე სერვისში hosted წუთების ალტერნატივაა, მაგრამ უფასო გამოთვლით რესურსს არ ნიშნავს. GitHub Actions თვითმართვადი runner-ის შესრულების წუთებს არ არიცხავს; GitLab.com-ზე ჯგუფისა და პროექტის საკუთარი runner-ები hosted compute-კვოტას არ ხარჯავს. სამაგიეროდ გუნდს რჩება მანქანის, განახლებების, ხელმისაწვდომობისა და ქეშის მოვლა. დიდი და მუდმივი CI დატვირთვისას ეს ხარჯები შესაძლოა hosted პაკეტებზე ხელსაყრელი გამოვიდეს, თუმცა ამის განსაზღვრა საკუთარი ინფრასტრუქტურის ფასისა და job-ის რეალური დროის ცოდნას მოითხოვს.
ასევე წაიკითხეთ:
მსგავსი სტატიები


GitLab-ის Dependency Firewall პაკეტს build-მდე აჩერებს

Postman თუ Insomnia: გუნდური პლატფორმა თუ ლოკალური კონტროლი

Google Workspace თუ Zoho Workplace: იაფი ფოსტა საცავის ფასად არ აგერიოთ

Microsoft Foundry-ის აგენტები დავალებებს უკვე განრიგითაც შეასრულებენ

GitHub Copilot თუ Amazon Q: AWS-კოდზე სპეციალისტი ზოგად ასისტენტს უსწრებს
გამოიწერეთ ჩვენი ბიულეტენი
მიიღეთ უახლესი ამბები Web3-ის, AI-სა და კრიპტოს შესახებ პირდაპირ თქვენს ელფოსტაზე.