{"id":4378,"date":"2019-08-12T06:10:22","date_gmt":"2019-08-12T03:10:22","guid":{"rendered":"https:\/\/www.almtoolbox.com\/blog_he\/?p=4378"},"modified":"2019-08-12T09:34:01","modified_gmt":"2019-08-12T06:34:01","slug":"bitbucket-jira-gitlab-ci-cd","status":"publish","type":"post","link":"https:\/\/www.almtoolbox.com\/blog_he\/bitbucket-jira-gitlab-ci-cd\/","title":{"rendered":"\u05d4\u05d0\u05dd \u05d4\u05d7\u05d9\u05d1\u05d5\u05e8 \u05d4\u05d1\u05d0 \u05d0\u05e4\u05e9\u05e8\u05d9?  Bitbucket + Jira + GitLab CI\/CD"},"content":{"rendered":"<p>\u05d1\u05ea\u05e7\u05d5\u05e4\u05d4 \u05d4\u05d0\u05d7\u05e8\u05d5\u05e0\u05d4 \u05d9\u05e9\u05e0\u05d4 \u05d4\u05ea\u05e2\u05e0\u05d9\u05d9\u05e0\u05d5\u05ea \u05d2\u05d5\u05d1\u05e8\u05ea \u05d1- GitLab \u05d5\u05d1\u05e4\u05e8\u05d8 \u05d1\u05e8\u05db\u05d9\u05d1 \u05d4- CI\/CD \u05d4\u05de\u05ea\u05e7\u05d3\u05dd\u00a0 \u05e9\u05de\u05d2\u05d9\u05e2 built-in \u05d1\u05de\u05d5\u05e6\u05e8.<br \/>\n\u05dc\u05d0\u05d5\u05e8 \u05d6\u05d0\u05ea \u05db\u05ea\u05d1\u05e0\u05d5 \u05dc\u05d0\u05d7\u05e8\u05d5\u05e0\u05d4 \u05db\u05de\u05d4 \u05ea\u05db\u05e0\u05d9\u05dd \u05d1\u05e0\u05d5\u05e9\u05d0 \u05d5\u05e7\u05d9\u05d9\u05de\u05e0\u05d5 \u05db\u05de\u05d4 \u05de\u05e4\u05d2\u05e9\u05d9\u05dd \u05d1\u05e0\u05d5\u05e9\u05d0 (\u05db\u05d5\u05dc\u05dd \u05de\u05d5\u05e7\u05dc\u05d8\u05d9\u05dd), \u05d5\u05e7\u05d9\u05d1\u05dc\u05e0\u05d5 \u05d4\u05e8\u05d1\u05d4 \u05e9\u05d0\u05dc\u05d5\u05ea \u05de\u05e2\u05e0\u05d9\u05d9\u05e0\u05d5\u05ea.<\/p>\n<p>\u05d1\u05de\u05d0\u05de\u05e8 \u05dc\u05d4\u05dc\u05df \u05d0\u05e0\u05d9 \u05de\u05ea\u05de\u05e7\u05d3 \u05d1\u05d0\u05d7\u05ea \u05d4\u05e9\u05d0\u05dc\u05d5\u05ea \u05e9\u05e0\u05e9\u05d0\u05dc\u05e0\u05d5 \u05db\u05de\u05d4 \u05e4\u05e2\u05de\u05d9\u05dd, \u05d5\u05d4\u05d9\u05d0: \u05d4\u05d0\u05dd \u05d0\u05e4\u05e9\u05e8 \u05dc\u05d7\u05d1\u05e8 \u05d1\u05d9\u05df Bitbucket \u05dc- GitLab CI\/CD ? \u05d5\u05dc\u05de\u05e2\u05e9\u05d4 \u05d5\u05d0\u05e8\u05d9\u05e6\u05d9\u05d4 \u05e9\u05dc \u05d4\u05e9\u05d0\u05dc\u05d4 \u05d4\u05d9\u05d0 &quot;\u05d4\u05d0\u05dd \u05d4\u05d7\u05d9\u05d1\u05d5\u05e8 Jira + Bitbucket + GitLab CI\/CD \u05d0\u05e4\u05e9\u05e8\u05d9? &quot; (\u05d4\u05d5\u05d0\u05d9\u05dc \u05d5\u05e4\u05e2\u05de\u05d9\u05dd \u05e8\u05d1\u05d5\u05ea \u05de\u05e9\u05ea\u05de\u05e9\u05d9 Bitbucket \u05d2\u05dd \u05e2\u05d5\u05d1\u05d3\u05d9\u05dd \u05e2\u05dd Jira) .<\/p>\n<p><strong>\u05d5\u05d4\u05ea\u05e9\u05d5\u05d1\u05d4 \u05dc\u05db\u05da \u05d7\u05d9\u05d5\u05d1\u05d9\u05ea.<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-4380\" src=\"https:\/\/www.almtoolbox.com\/blog_he\/wp-content\/uploads\/2019\/08\/gilab-bitbucket-logos.jpg\" alt=\"gitlab bitbucket logo\" width=\"680\" height=\"320\" srcset=\"https:\/\/www.almtoolbox.com\/blog_he\/wp-content\/uploads\/2019\/08\/gilab-bitbucket-logos.jpg 962w, https:\/\/www.almtoolbox.com\/blog_he\/wp-content\/uploads\/2019\/08\/gilab-bitbucket-logos-300x141.jpg 300w, https:\/\/www.almtoolbox.com\/blog_he\/wp-content\/uploads\/2019\/08\/gilab-bitbucket-logos-768x362.jpg 768w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><\/p>\n<p>\u05d1\u05d3\u05e7\u05e0\u05d5 \u05d0\u05ea \u05d4\u05e0\u05d5\u05e9\u05d0 \u05dc\u05e2\u05d5\u05de\u05e7 \u05d5\u05d1\u05e4\u05d5\u05e1\u05d8 \u05d4\u05d6\u05d4 \u05e0\u05e1\u05d1\u05d9\u05e8 \u05db\u05d9\u05e6\u05d3 \u05d6\u05d4 \u05de\u05ea\u05d0\u05e4\u05e9\u05e8.<br \/>\n\u05de\u05de\u05d4 \u05e9\u05e8\u05d0\u05d9\u05e0\u05d5 , \u05d1\u05e1\u05d9\u05d8\u05d5\u05d0\u05e6\u05d9\u05d5\u05ea \u05d1\u05d4\u05df \u05d4\u05e9\u05d0\u05dc\u05d4 \u05e0\u05e9\u05d0\u05dc\u05ea &#8211; \u05d1\u05d7\u05d1\u05e8\u05d4 \u05d9\u05e9 \u05db\u05d1\u05e8 Bitbucket \u05d5\u05dc\u05e8\u05d5\u05d1 \u05d2\u05dd Jenkins , \u05d5\u05d4\u05e8\u05e6\u05d5\u05df \u05d4\u05d5\u05d0 \u05dc\u05d4\u05d7\u05dc\u05d9\u05e3 \u05d0\u05ea Jenkins \u05dc\u05e4\u05ea\u05e8\u05d5\u05df \u05de\u05d5\u05d3\u05e8\u05e0\u05d9 \u05d9\u05d5\u05ea\u05e8, \u05d5\u05d9\u05d7\u05d3 \u05e2\u05dd \u05d6\u05d0\u05ea \u05dc\u05d0 \u05e8\u05d5\u05e6\u05d9\u05dd \u05dc\u05d4\u05d7\u05dc\u05d9\u05e3 \u05d0\u05ea Bitbucket \u05db\u05d9 \u05d4\u05d5\u05e9\u05e7\u05e2\u05d4 \u05d1\u05d5 \u05e2\u05d1\u05d5\u05d3\u05ea \u05d4\u05ea\u05d0\u05de\u05d4 \u05dc\u05d0\u05e8\u05d2\u05d5\u05df (\u05d5\u05dc\u05de\u05e8\u05d5\u05ea \u05e9\u05db\u05d9\u05d3\u05d5\u05e2 GitLab \u05d4\u05d5\u05d0 \u05ea\u05d7\u05dc\u05d9\u05e3 \u05de\u05d5\u05d3\u05e8\u05e0\u05d9 \u05d5\u05de\u05ea\u05e7\u05d3\u05dd \u05d2\u05dd \u05dc- Bitbucket &#8211; \u05d0\u05da \u05e2\u05dc \u05db\u05da \u05db\u05d1\u05e8 \u05db\u05ea\u05d1\u05e0\u05d5 \u05db\u05de\u05d4 \u05de\u05d0\u05de\u05e8\u05d9\u05dd \u05d1\u05e2\u05d1\u05e8 \u05d5\u05d2\u05dd \u05d4\u05e7\u05dc\u05d8\u05e0\u05d5 case study \u05e9\u05dc \u05d7\u05d1\u05e8\u05d4 \u05e9\u05e2\u05e9\u05ea\u05d4 \u05d0\u05ea \u05d4\u05de\u05e2\u05d1\u05e8 \u05d4\u05e0&quot;\u05dc [\u05e7\u05d9\u05e9\u05d5\u05e8 \u05d1\u05d4\u05de\u05e9\u05da]).<\/p>\n<p>\u05d4\u05d7\u05d9\u05d1\u05d5\u05e8 \u05d0\u05e4\u05e9\u05e8\u05d9 \u05d4\u05df \u05d1\u05d2\u05d9\u05e8\u05e1\u05ea self-hosted \u05e9\u05d1\u05d5 \u05d4\u05e9\u05e8\u05ea \u05d1\u05d1\u05e2\u05dc\u05d5\u05ea\u05db\u05dd (\u05d3\u05d4\u05d9\u05d9\u05e0\u05d5 on-premises \u05db\u05d0\u05e9\u05e8 \u05d4\u05e9\u05e8\u05ea \u05de\u05ea\u05d0\u05e8\u05d7 \u05d0\u05e6\u05dc\u05db\u05dd \u05d0\u05d5 \u05d1\u05d0\u05d9\u05e8\u05d5\u05d7 \u05e4\u05e8\u05d8\u05d9 \u05d1\u05e2\u05e0\u05df \u05db\u05dc\u05e9\u05d4\u05d5) \u05d5\u05d4\u05df \u05d1\u05d2\u05d9\u05e8\u05e1\u05ea \u05e2\u05e0\u05df \u05e6\u05d9\u05d1\u05d5\u05e8\u05d9 (gitlab dot com) &#8212; \u05dc\u05de\u05e2\u05e9\u05d4 \u05d4\u05d7\u05d9\u05d1\u05d5\u05e8 \u05d0\u05e4\u05e9\u05e8\u05d9 \u05d1\u05db\u05dc \u05e6\u05d5\u05e8\u05d5\u05ea \u05d4\u05d4\u05e4\u05e6\u05d4 \u05e9\u05dc GitLab CI\/CD \u05d5\u05e9\u05dc Bitbucket .<br \/>\n\u05d4\u05d7\u05d9\u05d1\u05d5\u05e8 \u05d1\u05d9\u05e0\u05d9\u05d4\u05dd \u05de\u05ea\u05d0\u05e4\u05e9\u05e8 \u05d1\u05e2\u05d6\u05e8\u05ea \u05e9\u05e0\u05d9 \u05e4\u05d9\u05e6'\u05e8\u05d9\u05dd \u05e9\u05e7\u05d9\u05d9\u05de\u05d9\u05dd \u05d1- GitLab :<\/p>\n<ul>\n<li>GitLab CI\/CD for external repositories (\u05e0\u05d5\u05e1\u05e3 \u05d1\u05de\u05e8\u05e5 2018)<\/li>\n<li>Remote repository pull mirroring (\u05e7\u05d9\u05d9\u05dd \u05de\u05d0\u05d6 2017)<\/li>\n<\/ul>\n<p>\u05de\u05e0\u05e1\u05d9\u05d5\u05e0\u05e0\u05d5, \u05de\u05d5\u05de\u05dc\u05e5 \u05dc\u05d1\u05e6\u05e2 \u05ea\u05db\u05e0\u05d5\u05df \u05dc\u05e4\u05e0\u05d9 \u05d4\u05e9\u05d9\u05de\u05d5\u05e9 \u05d1\u05d4\u05dd (\u05dc\u05d3\u05d5\u05d2': \u05db\u05d9\u05e6\u05d3 \u05d9\u05e8\u05d0\u05d5 \u05ea\u05d4\u05dc\u05d9\u05db\u05d9 \u05d4\u05e2\u05d1\u05d5\u05d3\u05d4 \u05d5\u05d4- pipelines ; \u05d4\u05d3\u05e8\u05db\u05d5\u05ea \u05dc\u05de\u05e9\u05ea\u05de\u05e9\u05d9\u05dd \u05d5\u05db\u05d5').<br \/>\n\u05d4\u05e9\u05d9\u05de\u05d5\u05e9 \u05d1\u05e4\u05d9\u05e6'\u05e8 \u05d4\u05e9\u05e0\u05d9 (pull mirroring) \u05d2\u05dd \u05de\u05e6\u05e8\u05d9\u05da \u05d4\u05ea\u05d0\u05de\u05d4 \u05ea\u05db\u05e0\u05d5\u05e0\u05d9\u05ea \u05e0\u05d5\u05e1\u05e4\u05ea \u05e2&quot;\u05de \u05dc\u05e0\u05e6\u05dc \u05e0\u05db\u05d5\u05df \u05d0\u05ea \u05d4\u05e4\u05d9\u05e6'\u05e8 \u05d5\u05d0\u05ea \u05d4- best practices \u05d4\u05d8\u05de\u05d5\u05e0\u05d9\u05dd \u05d1\u05d5.<\/p>\n<h3>\u05d0\u05d9\u05da \u05d9\u05e8\u05d0\u05d4 \u05ea\u05d4\u05dc\u05d9\u05da \u05d4\u05e2\u05d1\u05d5\u05d3\u05d4 \u05d9\u05d7\u05d3?<\/h3>\n<p>\u05d1\u05ea\u05e8\u05e9\u05d9\u05dd \u05dc\u05d4\u05dc\u05df \u05ea\u05d4\u05dc\u05d9\u05da \u05e2\u05d1\u05d5\u05d3\u05d4 \u05d1\u05e1\u05d9\u05e1\u05d9 \u05e9\u05d1\u05e0\u05d9\u05e0\u05d5 \u05d5\u05d0\u05d5\u05ea\u05d5 \u05d0\u05e0\u05d5 \u05de\u05e6\u05d9\u05d2\u05d9\u05dd \u05dc\u05d7\u05d1\u05e8\u05d5\u05ea \u05dc\u05d4\u05df \u05d0\u05e0\u05d5 \u05de\u05e1\u05d9\u05d9\u05e2\u05d9\u05dd \u05d1\u05e4\u05d9\u05ea\u05d5\u05d7 \u05ea\u05d4\u05dc\u05d9\u05db\u05d9 \u05e4\u05d9\u05ea\u05d5\u05d7 \u05d5- pipelines.<br \/>\n(\u05db\u05d0\u05de\u05d5\u05e8, \u05d4\u05ea\u05d4\u05dc\u05d9\u05da \u05dc\u05d4\u05dc\u05df \u05d4\u05d9\u05e0\u05d5 \u05d1\u05e1\u05d9\u05e1\u05d9 \u05d9\u05d7\u05e1\u05d9\u05ea, \u05d0\u05da \u05db\u05d5\u05dc\u05dc \u05d0\u05ea \u05db\u05dc \u05d4\u05e9\u05dc\u05d1\u05d9\u05dd \u05d1 &quot;\u05e8\u05d1\u05d9\u05e2\u05d9\u05d4 \u05d4\u05e7\u05dc\u05d0\u05e1\u05d9\u05ea&quot; (\u05e7\u05d9\u05e9\u05d5\u05e8 \u05dc\u05de\u05d0\u05de\u05e8 \u05d1\u05d4\u05de\u05e9\u05da), \u05d5\u05e0\u05d9\u05ea\u05df \u05dc\u05e9\u05e0\u05d5\u05ea \u05d1\u05d5 \u05d3\u05d1\u05e8\u05d9\u05dd \u05e8\u05d1\u05d9\u05dd \u05d1\u05d4\u05ea\u05d0\u05dd \u05dc\u05e6\u05e8\u05db\u05d9\u05dd \u05e1\u05e4\u05e6\u05d9\u05e4\u05d9\u05d9\u05dd \u05d1\u05db\u05dc \u05d7\u05d1\u05e8\u05d4)<\/p>\n<p><a href=\"https:\/\/www.almtoolbox.com\/blog_he\/wp-content\/uploads\/2019\/08\/jira-bitbucket-gitlab-flow.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-4383\" src=\"https:\/\/www.almtoolbox.com\/blog_he\/wp-content\/uploads\/2019\/08\/jira-bitbucket-gitlab-flow.png\" alt=\"jira bitbucket gitlab ci\/cd flow\" width=\"669\" height=\"361\" srcset=\"https:\/\/www.almtoolbox.com\/blog_he\/wp-content\/uploads\/2019\/08\/jira-bitbucket-gitlab-flow.png 1002w, https:\/\/www.almtoolbox.com\/blog_he\/wp-content\/uploads\/2019\/08\/jira-bitbucket-gitlab-flow-300x162.png 300w, https:\/\/www.almtoolbox.com\/blog_he\/wp-content\/uploads\/2019\/08\/jira-bitbucket-gitlab-flow-768x414.png 768w\" sizes=\"auto, (max-width: 669px) 100vw, 669px\" \/><\/a><\/p>\n<p>\u05d4\u05e1\u05d1\u05e8 \u05dc\u05ea\u05e8\u05e9\u05d9\u05dd \u05dc\u05e2\u05d9\u05dc:<\/p>\n<ol>\n<li dir=\"ltr\" style=\"font-weight: 400; text-align: left;\"><span style=\"font-weight: 400;\">The group leader creates an issue in JIRA to fix a bug or develop a feature and assigns it to a developer. The issue is in the \u201cTo Do\u201d status.<\/span><\/li>\n<li dir=\"ltr\" style=\"font-weight: 400; text-align: left;\"><span style=\"font-weight: 400;\">The developer starts working. He moves the issue to status \u201cDoing\u201d, then creates a branch and clones or pulls the repo to his workstation.<\/span><\/li>\n<li dir=\"ltr\" style=\"font-weight: 400; text-align: left;\"><span style=\"font-weight: 400;\">After the feature is developed\/the bug is fixed, the developer pushes his work to the Bitbucket server, which triggers a CI pipeline.<\/span><\/li>\n<li dir=\"ltr\" style=\"font-weight: 400; text-align: left;\"><span style=\"font-weight: 400;\">If the pipeline succeeds, the developer creates a Pull Request, thus starting a code review.<\/span><\/li>\n<li dir=\"ltr\" style=\"font-weight: 400; text-align: left;\"><span style=\"font-weight: 400;\">As a result of the code review, the developer may be requested to do a number of changes before the Pull Request is merged,\u00a0 with each change triggering a CI pipeline.<\/span><\/li>\n<li dir=\"ltr\" style=\"font-weight: 400; text-align: left;\"><span style=\"font-weight: 400;\">At last, the Pull Request is merged into the master branch, and again a CI pipeline runs to check the merge result.<\/span><\/li>\n<li dir=\"ltr\" style=\"font-weight: 400; text-align: left;\"><span style=\"font-weight: 400;\">Some changes may be needed on the master branch, after which the software is marked as a new baseline and the JIRA issue is marked as \u201cDone\u201d<\/span><\/li>\n<li dir=\"ltr\" style=\"font-weight: 400; text-align: left;\"><span style=\"font-weight: 400;\">Note that there can be many variations on this flow. E.g., there can be an additional JIRA status, \u201cQA Testing\u201d to which the issue moves when a Pull Request is merged.<\/span><\/li>\n<\/ol>\n<h3>\u05dc\u05e1\u05d9\u05db\u05d5\u05dd (\u05d5\u05e0\u05e7\u05d5\u05d3\u05d5\u05ea \u05e0\u05d5\u05e1\u05e4\u05d5\u05ea \u05e9\u05dc\u05de\u05d3\u05e0\u05d5 \u05de\u05d4\u05d1\u05d3\u05d9\u05e7\u05d4 \u05e9\u05d1\u05d9\u05e6\u05e2\u05e0\u05d5):<\/h3>\n<ul>\n<li>\u05e0\u05d9\u05ea\u05df \u05dc\u05d7\u05d1\u05e8 \u05d1\u05d9\u05df Bitbucket \u05dc- GitLab CI\/CD (\u05d5\u05db\u05da \u05de\u05e7\u05d1\u05dc\u05d9\u05dd \u05d0\u05ea \u05db\u05dc \u05d4\u05e4\u05d5\u05e0\u05e7\u05e6\u05d9\u05d5\u05e0\u05dc\u05d9\u05d5\u05ea \u05d5\u05d4\u05e4\u05d9\u05e6'\u05e8\u05d9\u05dd \u05d4\u05e7\u05d9\u05d9\u05de\u05d9\u05dd \u05d1- GitLab CI\/CD)<\/li>\n<li>\u05e0\u05d9\u05ea\u05df \u05dc\u05d7\u05d1\u05e8 \u05d1\u05d9\u05df Jira + Bitbucket + GitLab CI\/CD<\/li>\n<li>\u05e0\u05d9\u05ea\u05df \u05d2\u05dd \u05dc\u05d7\u05d1\u05e8 \u05d1\u05d9\u05df Jira + GitLab (\u05d1\u05e2\u05d1\u05e8 \u05db\u05ea\u05d1\u05e0\u05d5 \u05de\u05d0\u05de\u05e8 \u05d1\u05e0\u05d5\u05e9\u05d0 \u05d5\u05d2\u05dd \u05d4\u05d5\u05e6\u05d0\u05e0\u05d5 \u05d5\u05d9\u05d3\u05d0\u05d5 \u05d4\u05de\u05d3\u05d2\u05d9\u05dd \u05d6\u05d0\u05ea)<\/li>\n<li>\u05dc\u05d7\u05d9\u05dc\u05d5\u05e4\u05d9\u05df \u05e0\u05d9\u05ea\u05df \u05dc\u05d4\u05e9\u05ea\u05de\u05e9 \u05d1- GitLab \u05dc\u05db\u05dc \u05d4\u05e4\u05d5\u05e0\u05e7\u05e6\u05d9\u05d5\u05e0\u05dc\u05d9\u05d5\u05ea \u05e9\u05de\u05d2\u05d9\u05e2\u05d4 \u05de- Jira \u05d5- Bitbucket<br \/>\n(\u05d3\u05d4\u05d9\u05d9\u05e0\u05d5 \u05e9- GitLab \u05d9\u05db\u05d5\u05dc \u05dc\u05e9\u05de\u05e9 \u05db\u05db\u05dc\u05d9 \u05d0\u05d7\u05d3 \u05e9\u05de\u05d7\u05dc\u05d9\u05e3 \u05d0\u05ea Jira + Bitbucket + Jenkins)<\/li>\n<li>\u05dc\u05de\u05e2\u05e9\u05d4 \u05d0\u05e4\u05e9\u05e8\u05d9 \u05dc\u05d7\u05d1\u05e8 \u05d1\u05d0\u05d5\u05e4\u05df \u05d3\u05d5\u05de\u05d4 \u05d0\u05ea GitLab CI\/CD \u05de\u05d5\u05dc \u05db\u05dc \u05e9\u05e8\u05ea git (\u05db\u05d2\u05d5\u05df GitHub, gitolite, gerrit \u05d5\u05db\u05d5')<\/li>\n<li>\u05d4\u05d0\u05dd \u05db\u05d3\u05d0\u05d9 \u05de\u05d1\u05d7\u05d9\u05e0\u05ea \u05d7\u05e1\u05db\u05d5\u05df \u05db\u05e1\u05e4\u05d9 \u05dc\u05d4\u05e9\u05d0\u05e8 \u05e2\u05dd Bitbucket? \u05dc\u05d0 \u05d1\u05d8\u05d5\u05d7 &#8211; \u05d4\u05d3\u05d1\u05e8 \u05ea\u05dc\u05d5\u05d9 \u05d1\u05db\u05de\u05d4 \u05d2\u05d5\u05e8\u05de\u05d9\u05dd (\u05d0\u05e4\u05e9\u05e8 \u05dc\u05d4\u05ea\u05d9\u05d9\u05e2\u05e5 \u05d0\u05d9\u05ea\u05e0\u05d5 \u05d1\u05e0\u05d5\u05e9\u05d0)<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<div class=\"alm-box alm-contact\">\n<div dir=\"rtl\"><em>\u05d7\u05d1\u05e8\u05ea ALM-Toolbox \u05de\u05e6\u05d9\u05e2\u05d4 \u05e4\u05ea\u05e8\u05d5\u05e0\u05d5\u05ea \u05de\u05e7\u05e6\u05d4 \u05dc\u05e7\u05e6\u05d4 \u05d1\u05ea\u05d7\u05d5\u05de\u05d9 ALM, Kubernetes, DevOps, \u05d5\u05d1\u05e4\u05e8\u05d8 Bitbucket, Jira, GitLab, Jenkins , \u05d1\u05e0\u05d9\u05d9\u05ea \u05e1\u05d1\u05d9\u05d1\u05d5\u05ea \u05e4\u05d9\u05ea\u05d5\u05d7 \u05d5\u05d1\u05d3\u05d9\u05e7\u05d5\u05ea \u05d5\u05d4\u05e2\u05d1\u05e8\u05ea\u05dd \u05dc\u05e7\u05d5\u05e0\u05d8\u05d9\u05d9\u05e0\u05e8\u05d9\u05dd \u05d5\u05dc\u05e2\u05e0\u05df, \u05de\u05d9\u05d2\u05e8\u05e6\u05d9\u05d4 \u05d1\u05d9\u05df \u05db\u05dc\u05d9\u05dd, \u05d4\u05d3\u05e8\u05db\u05d5\u05ea \u05e2\u05dc \u05d4\u05db\u05dc\u05d9\u05dd, \u05d4\u05ea\u05d0\u05de\u05ea \u05e8\u05d9\u05e9\u05d5\u05d9 \u05dc\u05e6\u05e8\u05db\u05d9 \u05d4\u05dc\u05e7\u05d5\u05d7 \u05d5\u05de\u05db\u05d9\u05e8\u05ea \u05e8\u05e9\u05d9\u05d5\u05e0\u05d5\u05ea \u05ea\u05d5\u05db\u05e0\u05d4 \u05de\u05ea\u05d0\u05d9\u05de\u05d9\u05dd \u05d5\u05e2\u05d5\u05d3.<br \/>\n\u05e9\u05d0\u05dc\u05d5\u05ea? \u05e0\u05e9\u05de\u05d7 \u05dc\u05e2\u05e0\u05d5\u05ea \u05e2\u05dc \u05db\u05dc \u05e9\u05d0\u05dc\u05d4 &#8211; \u05d0\u05e4\u05e9\u05e8 \u05dc\u05e4\u05e0\u05d5\u05ea \u05d0\u05dc\u05d9\u05e0\u05d5 \u05d1\u05de\u05d9\u05d9\u05dc\u00a0<a href=\"mailto:devops@almtoolbox.com\" target=\"_blank\" rel=\"noopener\">devops@almtoolbox.com<\/a> \u05d0\u05d5 \u05d8\u05dc\u05e4\u05d5\u05e0\u05d9\u05ea 072-240-5222<\/em><\/div>\n<div dir=\"rtl\"><\/div>\n<\/div>\n<p>&nbsp;<\/p>\n<h3>\u05e7\u05d9\u05e9\u05d5\u05e8\u05d9\u05dd \u05e8\u05dc\u05d1\u05e0\u05d8\u05d9\u05dd:<\/h3>\n<ul>\n<li>\u05de\u05d0\u05de\u05e8: \u05e1\u05e7\u05d9\u05e8\u05ea <a href=\"https:\/\/www.almtoolbox.com\/blog_he\/gitlab-ci-cd-overview\/\" target=\"_blank\" rel=\"noopener\">\u05d4\u05e4\u05d9\u05e6'\u05e8\u05d9\u05dd \u05d4\u05e7\u05d9\u05d9\u05de\u05d9\u05dd \u05d1- GitLab CI\/CD<\/a>\u00a0(\u05e2\u05d1\u05e8\u05d9\u05ea)<\/li>\n<li>\u05d3\u05d5&quot;\u05d7 Forrester \u05d4\u05de\u05e6\u05d9\u05d2 <a href=\"https:\/\/www.almtoolbox.com\/blog\/gitlab-named-ci-leader-in-forrester-wave\/\" target=\"_blank\" rel=\"noopener\">\u05d3\u05d5&quot;\u05d7 \u05d4\u05e9\u05d5\u05d5\u05d0\u05ea\u05d9 \u05e9\u05dc \u05db\u05dc\u05d9 CI \u05de\u05d5\u05d1\u05d9\u05dc\u05d9\u05dd \u05d5\u05d9\u05ea\u05e8\u05d5\u05e0\u05d5\u05ea \u05e9\u05dc GitLab CI\/CD<\/a>\u00a0(\u05d0\u05e0\u05d2\u05dc\u05d9\u05ea)<\/li>\n<li><a href=\"https:\/\/www.almtoolbox.com\/blog_he\/gitlab-ci-cd-demo-may-2019\/\" target=\"_blank\" rel=\"noopener\">\u05d3\u05de\u05d5 \u05d8\u05db\u05e0\u05d9 \u05e9\u05dc GitLab CI\/CD<\/a><\/li>\n<li><a href=\"https:\/\/www.almtoolbox.com\/blog_he\/gitlab-all-features-excel-sheet\/\" target=\"_blank\" rel=\"noopener\">\u05e8\u05e9\u05d9\u05de\u05d4 \u05de\u05dc\u05d0\u05d4 \u05e9\u05dc \u05db\u05dc \u05d4\u05e4\u05d9\u05e6'\u05e8\u05d9\u05dd \u05d4\u05e7\u05d9\u05d9\u05de\u05d9\u05dd \u05d1- GitLab , \u05de\u05e1\u05d5\u05d3\u05e8\u05d9\u05dd \u05dc\u05e4\u05d9 <\/a><a href=\"https:\/\/www.almtoolbox.com\/blog_he\/gitlab-all-features-excel-sheet\/\" target=\"_blank\" rel=\"noopener\">Edition \u05d5- Category<\/a><\/li>\n<li>\u05e2\u05de\u05d5\u05d3\u05d9 \u05de\u05d5\u05e6\u05e8: <a href=\"https:\/\/www.almtoolbox.com\/il\/jira\" target=\"_blank\" rel=\"noopener\">Jira<\/a> <a href=\"https:\/\/www.almtoolbox.com\/il\/bitbucket\" target=\"_blank\" rel=\"noopener\">Bitbucket<\/a> <a href=\"https:\/\/www.almtoolbox.com\/il\/gitlab\" target=\"_blank\" rel=\"noopener\">GitLab<\/a> <a href=\"https:\/\/www.almtoolbox.com\/jenkins-he\" target=\"_blank\" rel=\"noopener\">Jenkins<\/a><\/li>\n<li>\u05de\u05d0\u05de\u05e8: <a href=\"https:\/\/www.almtoolbox.com\/blog_he\/classic-4-for-software-development\/\" target=\"_blank\" rel=\"noopener\">&quot;\u05d4\u05e8\u05d1\u05d9\u05e2\u05d9\u05d4 \u05d4\u05e7\u05dc\u05d0\u05e1\u05d9\u05ea&quot; \u05dc\u05de\u05e4\u05ea\u05d7\u05d9 \u05ea\u05d5\u05db\u05e0\u05d4<\/a>\u00a0(\u05e2\u05d1\u05e8\u05d9\u05ea)<\/li>\n<li>GitLab CI\/CD workshop &#8211; \u05d1\u05e7\u05e8\u05d5\u05d1<\/li>\n<li>\u05d1\u05e7\u05e8\u05d5\u05d1: \u05d4\u05d3\u05d2\u05de\u05d4 \u05e9\u05dc \u05e9\u05d9\u05de\u05d5\u05e9 \u05d1- GitLab CI\/CD Pipelines \u05d1\u05d7\u05d1\u05e8\u05ea StartApp (\u05e2\u05d1\u05e8\u05d9\u05ea)<\/li>\n<li>Case Study &#8211; <a href=\"https:\/\/www.almtoolbox.com\/blog_he\/gitlab-events-sep2018-content\/\" target=\"_blank\" rel=\"noopener\">\u05de\u05d3\u05d5\u05e2 AppsFlyer \u05e2\u05d1\u05e8\u05d5 \u05de- Bitbucket \u05dc- GitLab<\/a> (\u05e2\u05d1\u05e8\u05d9\u05ea)<\/li>\n<li><a href=\"https:\/\/www.almtoolbox.com\/blog_he\/our-training-catalog\/\" target=\"_blank\" rel=\"noopener\">\u05e8\u05e9\u05d9\u05de\u05ea \u05e7\u05d5\u05e8\u05e1\u05d9\u05dd \u05e9\u05d0\u05e0\u05d5 \u05de\u05e2\u05d1\u05d9\u05e8\u05d9\u05dd \u05e2\u05dc GitLab, Bitbucket, git, Jira, Jenkins<\/a><\/li>\n<\/ul>\n<p>\u05e8\u05d5\u05e6\u05d9\u05dd \u05dc\u05d4\u05e9\u05d0\u05e8 \u05de\u05e2\u05d5\u05d3\u05db\u05e0\u05d9\u05dd \u05db\u05d0\u05e9\u05e8 \u05e0\u05d5\u05e1\u05d9\u05e3 \u05dc\u05d0\u05ea\u05e8 \u05de\u05d9\u05d3\u05e2 \u05e0\u05d5\u05e1\u05e3 \u05e2\u05dc GitLab CI\/CD ? \u05e9\u05dc\u05d7\u05d5 \u05dc\u05e0\u05d5 \u05d0\u05ea\u00a0<a href=\"mailto:gitlab@almtoolbox.com?subject=Subscribe GitLab CI\/CD\">\u05d4\u05de\u05d9\u05d9\u05dc \u05d4\u05d1\u05d0<\/a>. \u05d0\u05e0\u05d5 \u05de\u05ea\u05d7\u05d9\u05d9\u05d1\u05d9\u05dd \u05dc\u05d0 \u05dc\u05e9\u05dc\u05d5\u05d7 SPAM .<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u05d1\u05ea\u05e7\u05d5\u05e4\u05d4 \u05d4\u05d0\u05d7\u05e8\u05d5\u05e0\u05d4 \u05d9\u05e9\u05e0\u05d4 \u05d4\u05ea\u05e2\u05e0\u05d9\u05d9\u05e0\u05d5\u05ea \u05d2\u05d5\u05d1\u05e8\u05ea \u05d1- GitLab \u05d5\u05d1\u05e4\u05e8\u05d8 \u05d1\u05e8\u05db\u05d9\u05d1 \u05d4- CI\/CD \u05d4\u05de\u05ea\u05e7\u05d3\u05dd\u00a0 \u05e9\u05de\u05d2\u05d9\u05e2 built-in \u05d1\u05de\u05d5\u05e6\u05e8. \u05dc\u05d0\u05d5\u05e8 \u05d6\u05d0\u05ea \u05db\u05ea\u05d1\u05e0\u05d5 \u05dc\u05d0\u05d7\u05e8\u05d5\u05e0\u05d4 \u05db\u05de\u05d4 \u05ea\u05db\u05e0\u05d9\u05dd \u05d1\u05e0\u05d5\u05e9\u05d0 \u05d5\u05e7\u05d9\u05d9\u05de\u05e0\u05d5 \u05db\u05de\u05d4 \u05de\u05e4\u05d2\u05e9\u05d9\u05dd \u05d1\u05e0\u05d5\u05e9\u05d0 (\u05db\u05d5\u05dc\u05dd \u05de\u05d5\u05e7\u05dc\u05d8\u05d9\u05dd), \u05d5\u05e7\u05d9\u05d1\u05dc\u05e0\u05d5 \u05d4\u05e8\u05d1\u05d4 \u05e9\u05d0\u05dc\u05d5\u05ea \u05de\u05e2\u05e0\u05d9\u05d9\u05e0\u05d5\u05ea. \u05d1\u05de\u05d0\u05de\u05e8 \u05dc\u05d4\u05dc\u05df \u05d0\u05e0\u05d9 \u05de\u05ea\u05de\u05e7\u05d3 \u05d1\u05d0\u05d7\u05ea \u05d4\u05e9\u05d0\u05dc\u05d5\u05ea \u05e9\u05e0\u05e9\u05d0\u05dc\u05e0\u05d5 \u05db\u05de\u05d4 \u05e4\u05e2\u05de\u05d9\u05dd, \u05d5\u05d4\u05d9\u05d0: \u05d4\u05d0\u05dd \u05d0\u05e4\u05e9\u05e8 \u05dc\u05d7\u05d1\u05e8 \u05d1\u05d9\u05df Bitbucket \u05dc- GitLab CI\/CD ? \u05d5\u05dc\u05de\u05e2\u05e9\u05d4 \u05d5\u05d0\u05e8\u05d9\u05e6\u05d9\u05d4 \u05e9\u05dc \u05d4\u05e9\u05d0\u05dc\u05d4 [&hellip;]<\/p>\n","protected":false},"author":5,"featured_media":4380,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,137,60,111,112,61,76],"tags":[],"class_list":["post-4378","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-best-practices","category-bitbucket","category-devops","category-gitlab","category-gitlab-ci","category-jenkins","category-jira"],"_links":{"self":[{"href":"https:\/\/www.almtoolbox.com\/blog_he\/wp-json\/wp\/v2\/posts\/4378","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.almtoolbox.com\/blog_he\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.almtoolbox.com\/blog_he\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.almtoolbox.com\/blog_he\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.almtoolbox.com\/blog_he\/wp-json\/wp\/v2\/comments?post=4378"}],"version-history":[{"count":0,"href":"https:\/\/www.almtoolbox.com\/blog_he\/wp-json\/wp\/v2\/posts\/4378\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.almtoolbox.com\/blog_he\/wp-json\/wp\/v2\/media\/4380"}],"wp:attachment":[{"href":"https:\/\/www.almtoolbox.com\/blog_he\/wp-json\/wp\/v2\/media?parent=4378"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.almtoolbox.com\/blog_he\/wp-json\/wp\/v2\/categories?post=4378"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.almtoolbox.com\/blog_he\/wp-json\/wp\/v2\/tags?post=4378"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}