[{"data":1,"prerenderedAt":1364},["ShallowReactive",2],{"/ja-jp/blog/categories/product/":3,"navigation-ja-jp":22,"banner-ja-jp":438,"footer-ja-jp":451,"product-category-page-ja-jp":661},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":8,"content":11,"config":12,"_id":15,"_type":16,"title":17,"_source":18,"_file":19,"_stem":20,"_extension":21},"/ja-jp/blog/categories/product","categories",false,"",{"title":9,"description":10},"製品","Browse articles related to 製品 on the GitLab Blog",{"name":9},{"template":13,"slug":14,"hide":6},"BlogCategory","product","content:ja-jp:blog:categories:product.yml","yaml","Product","content","ja-jp/blog/categories/product.yml","ja-jp/blog/categories/product","yml",{"_path":23,"_dir":24,"_draft":6,"_partial":6,"_locale":7,"data":25,"_id":434,"_type":16,"title":435,"_source":18,"_file":436,"_stem":437,"_extension":21},"/shared/ja-jp/main-navigation","ja-jp",{"logo":26,"freeTrial":31,"sales":36,"login":41,"items":46,"search":378,"minimal":412,"duo":425},{"config":27},{"href":28,"dataGaName":29,"dataGaLocation":30},"/ja-jp/","gitlab logo","header",{"text":32,"config":33},"無料トライアルを開始",{"href":34,"dataGaName":35,"dataGaLocation":30},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":37,"config":38},"お問い合わせ",{"href":39,"dataGaName":40,"dataGaLocation":30},"/ja-jp/sales/","sales",{"text":42,"config":43},"サインイン",{"href":44,"dataGaName":45,"dataGaLocation":30},"https://gitlab.com/users/sign_in/","sign in",[47,91,189,194,300,360],{"text":48,"config":49,"cards":51,"footer":74},"プラットフォーム",{"dataNavLevelOne":50},"platform",[52,58,66],{"title":48,"description":53,"link":54},"最も包括的かつAIで強化されたDevSecOpsプラットフォーム",{"text":55,"config":56},"プラットフォームを詳しく見る",{"href":57,"dataGaName":50,"dataGaLocation":30},"/ja-jp/platform/",{"title":59,"description":60,"link":61},"GitLab Duo（AI）","開発のすべてのステージでAIを活用し、ソフトウェアをより迅速にビルド",{"text":62,"config":63},"GitLab Duoのご紹介",{"href":64,"dataGaName":65,"dataGaLocation":30},"/ja-jp/gitlab-duo/","gitlab duo ai",{"title":67,"description":68,"link":69},"GitLabが選ばれる理由","GitLabが大企業に選ばれる理由10選",{"text":70,"config":71},"詳細はこちら",{"href":72,"dataGaName":73,"dataGaLocation":30},"/ja-jp/why-gitlab/","why gitlab",{"title":75,"items":76},"利用を開始：",[77,82,87],{"text":78,"config":79},"プラットフォームエンジニアリング",{"href":80,"dataGaName":81,"dataGaLocation":30},"/ja-jp/solutions/platform-engineering/","platform engineering",{"text":83,"config":84},"開発者の経験",{"href":85,"dataGaName":86,"dataGaLocation":30},"/ja-jp/developer-experience/","Developer experience",{"text":88,"config":89},"MLOps",{"href":90,"dataGaName":88,"dataGaLocation":30},"/ja-jp/topics/devops/the-role-of-ai-in-devops/",{"text":9,"left":92,"config":93,"link":95,"lists":99,"footer":171},true,{"dataNavLevelOne":94},"solutions",{"text":96,"config":97},"すべてのソリューションを表示",{"href":98,"dataGaName":94,"dataGaLocation":30},"/ja-jp/solutions/",[100,126,149],{"title":101,"description":102,"link":103,"items":108},"自動化","CI/CDと自動化でデプロイを加速",{"config":104},{"icon":105,"href":106,"dataGaName":107,"dataGaLocation":30},"AutomatedCodeAlt","/ja-jp/solutions/delivery-automation/","automated software delivery",[109,113,117,122],{"text":110,"config":111},"CI/CD",{"href":112,"dataGaLocation":30,"dataGaName":110},"/ja-jp/solutions/continuous-integration/",{"text":114,"config":115},"AIアシストによる開発",{"href":64,"dataGaLocation":30,"dataGaName":116},"AI assisted development",{"text":118,"config":119},"ソースコード管理",{"href":120,"dataGaLocation":30,"dataGaName":121},"/ja-jp/solutions/source-code-management/","Source Code Management",{"text":123,"config":124},"自動化されたソフトウェアデリバリー",{"href":106,"dataGaLocation":30,"dataGaName":125},"Automated software delivery",{"title":127,"description":128,"link":129,"items":134},"セキュリティ","セキュリティを損なうことなくコードをより迅速に完成",{"config":130},{"href":131,"dataGaName":132,"dataGaLocation":30,"icon":133},"/ja-jp/solutions/security-compliance/","security and compliance","ShieldCheckLight",[135,140,145],{"text":136,"config":137},"Application Security Testing",{"href":138,"dataGaName":139,"dataGaLocation":30},"/solutions/application-security-testing/","Application security testing",{"text":141,"config":142},"ソフトウェアサプライチェーンの安全性",{"href":143,"dataGaLocation":30,"dataGaName":144},"/ja-jp/solutions/supply-chain/","Software supply chain security",{"text":146,"config":147},"Software Compliance",{"href":148,"dataGaName":146,"dataGaLocation":30},"/solutions/software-compliance/",{"title":150,"link":151,"items":156},"測定",{"config":152},{"icon":153,"href":154,"dataGaName":155,"dataGaLocation":30},"DigitalTransformation","/ja-jp/solutions/visibility-measurement/","visibility and measurement",[157,161,166],{"text":158,"config":159},"可視性と測定",{"href":154,"dataGaLocation":30,"dataGaName":160},"Visibility and Measurement",{"text":162,"config":163},"バリューストリーム管理",{"href":164,"dataGaLocation":30,"dataGaName":165},"/ja-jp/solutions/value-stream-management/","Value Stream Management",{"text":167,"config":168},"分析とインサイト",{"href":169,"dataGaLocation":30,"dataGaName":170},"/ja-jp/solutions/analytics-and-insights/","Analytics and insights",{"title":172,"items":173},"GitLabが活躍する場所",[174,179,184],{"text":175,"config":176},"Enterprise",{"href":177,"dataGaLocation":30,"dataGaName":178},"/ja-jp/enterprise/","enterprise",{"text":180,"config":181},"スモールビジネス",{"href":182,"dataGaLocation":30,"dataGaName":183},"/ja-jp/small-business/","small business",{"text":185,"config":186},"公共機関",{"href":187,"dataGaLocation":30,"dataGaName":188},"/ja-jp/solutions/public-sector/","public sector",{"text":190,"config":191},"価格",{"href":192,"dataGaName":193,"dataGaLocation":30,"dataNavLevelOne":193},"/ja-jp/pricing/","pricing",{"text":195,"config":196,"link":198,"lists":202,"feature":287},"関連リソース",{"dataNavLevelOne":197},"resources",{"text":199,"config":200},"すべてのリソースを表示",{"href":201,"dataGaName":197,"dataGaLocation":30},"/ja-jp/resources/",[203,236,259],{"title":204,"items":205},"はじめに",[206,211,216,221,226,231],{"text":207,"config":208},"インストール",{"href":209,"dataGaName":210,"dataGaLocation":30},"/ja-jp/install/","install",{"text":212,"config":213},"クイックスタートガイド",{"href":214,"dataGaName":215,"dataGaLocation":30},"/ja-jp/get-started/","quick setup checklists",{"text":217,"config":218},"学ぶ",{"href":219,"dataGaLocation":30,"dataGaName":220},"https://university.gitlab.com/","learn",{"text":222,"config":223},"製品ドキュメント",{"href":224,"dataGaName":225,"dataGaLocation":30},"https://docs.gitlab.com/","product documentation",{"text":227,"config":228},"ベストプラクティスビデオ",{"href":229,"dataGaName":230,"dataGaLocation":30},"/ja-jp/getting-started-videos/","best practice videos",{"text":232,"config":233},"インテグレーション",{"href":234,"dataGaName":235,"dataGaLocation":30},"/ja-jp/integrations/","integrations",{"title":237,"items":238},"検索する",[239,244,249,254],{"text":240,"config":241},"お客様成功事例",{"href":242,"dataGaName":243,"dataGaLocation":30},"/ja-jp/customers/","customer success stories",{"text":245,"config":246},"ブログ",{"href":247,"dataGaName":248,"dataGaLocation":30},"/ja-jp/blog/","blog",{"text":250,"config":251},"リモート",{"href":252,"dataGaName":253,"dataGaLocation":30},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":255,"config":256},"TeamOps",{"href":257,"dataGaName":258,"dataGaLocation":30},"/ja-jp/teamops/","teamops",{"title":260,"items":261},"つなげる",[262,267,272,277,282],{"text":263,"config":264},"GitLabサービス",{"href":265,"dataGaName":266,"dataGaLocation":30},"/ja-jp/services/","services",{"text":268,"config":269},"コミュニティ",{"href":270,"dataGaName":271,"dataGaLocation":30},"/community/","community",{"text":273,"config":274},"フォーラム",{"href":275,"dataGaName":276,"dataGaLocation":30},"https://forum.gitlab.com/","forum",{"text":278,"config":279},"イベント",{"href":280,"dataGaName":281,"dataGaLocation":30},"/events/","events",{"text":283,"config":284},"パートナー",{"href":285,"dataGaName":286,"dataGaLocation":30},"/ja-jp/partners/","partners",{"backgroundColor":288,"textColor":289,"text":290,"image":291,"link":295},"#2f2a6b","#fff","ソフトウェア開発の未来への洞察",{"altText":292,"config":293},"ソースプロモカード",{"src":294},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758208064/dzl0dbift9xdizyelkk4.svg",{"text":296,"config":297},"最新情報を読む",{"href":298,"dataGaName":299,"dataGaLocation":30},"/ja-jp/the-source/","the source",{"text":301,"config":302,"lists":304},"Company",{"dataNavLevelOne":303},"company",[305],{"items":306},[307,312,318,320,325,330,335,340,345,350,355],{"text":308,"config":309},"GitLabについて",{"href":310,"dataGaName":311,"dataGaLocation":30},"/ja-jp/company/","about",{"text":313,"config":314,"footerGa":317},"採用情報",{"href":315,"dataGaName":316,"dataGaLocation":30},"/jobs/","jobs",{"dataGaName":316},{"text":278,"config":319},{"href":280,"dataGaName":281,"dataGaLocation":30},{"text":321,"config":322},"経営陣",{"href":323,"dataGaName":324,"dataGaLocation":30},"/company/team/e-group/","leadership",{"text":326,"config":327},"チーム",{"href":328,"dataGaName":329,"dataGaLocation":30},"/company/team/","team",{"text":331,"config":332},"ハンドブック",{"href":333,"dataGaName":334,"dataGaLocation":30},"https://handbook.gitlab.com/","handbook",{"text":336,"config":337},"投資家向け情報",{"href":338,"dataGaName":339,"dataGaLocation":30},"https://ir.gitlab.com/","investor relations",{"text":341,"config":342},"トラストセンター",{"href":343,"dataGaName":344,"dataGaLocation":30},"/ja-jp/security/","trust center",{"text":346,"config":347},"AI Transparency Center",{"href":348,"dataGaName":349,"dataGaLocation":30},"/ja-jp/ai-transparency-center/","ai transparency center",{"text":351,"config":352},"ニュースレター",{"href":353,"dataGaName":354,"dataGaLocation":30},"/company/contact/","newsletter",{"text":356,"config":357},"プレス",{"href":358,"dataGaName":359,"dataGaLocation":30},"/press/","press",{"text":37,"config":361,"lists":362},{"dataNavLevelOne":303},[363],{"items":364},[365,368,373],{"text":37,"config":366},{"href":39,"dataGaName":367,"dataGaLocation":30},"talk to sales",{"text":369,"config":370},"サポートを受ける",{"href":371,"dataGaName":372,"dataGaLocation":30},"/support/","get help",{"text":374,"config":375},"カスタマーポータル",{"href":376,"dataGaName":377,"dataGaLocation":30},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":379,"login":380,"suggestions":387},"閉じる",{"text":381,"link":382},"リポジトリとプロジェクトを検索するには、次にログインします",{"text":383,"config":384},"GitLab.com",{"href":44,"dataGaName":385,"dataGaLocation":386},"search login","search",{"text":388,"default":389},"提案",[390,393,398,400,404,408],{"text":59,"config":391},{"href":64,"dataGaName":392,"dataGaLocation":386},"GitLab Duo (AI)",{"text":394,"config":395},"コード提案（AI）",{"href":396,"dataGaName":397,"dataGaLocation":386},"/ja-jp/solutions/code-suggestions/","Code Suggestions (AI)",{"text":110,"config":399},{"href":112,"dataGaName":110,"dataGaLocation":386},{"text":401,"config":402},"GitLab on AWS",{"href":403,"dataGaName":401,"dataGaLocation":386},"/ja-jp/partners/technology-partners/aws/",{"text":405,"config":406},"GitLab on Google Cloud",{"href":407,"dataGaName":405,"dataGaLocation":386},"/ja-jp/partners/technology-partners/google-cloud-platform/",{"text":409,"config":410},"GitLabを選ぶ理由",{"href":72,"dataGaName":411,"dataGaLocation":386},"Why GitLab?",{"freeTrial":413,"mobileIcon":417,"desktopIcon":422},{"text":32,"config":414},{"href":415,"dataGaName":35,"dataGaLocation":416},"https://gitlab.com/-/trials/new/","nav",{"altText":418,"config":419},"GitLabアイコン",{"src":420,"dataGaName":421,"dataGaLocation":416},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":418,"config":423},{"src":424,"dataGaName":421,"dataGaLocation":416},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"freeTrial":426,"mobileIcon":430,"desktopIcon":432},{"text":427,"config":428},"GitLab Duoの詳細について",{"href":64,"dataGaName":429,"dataGaLocation":416},"gitlab duo",{"altText":418,"config":431},{"src":420,"dataGaName":421,"dataGaLocation":416},{"altText":418,"config":433},{"src":424,"dataGaName":421,"dataGaLocation":416},"content:shared:ja-jp:main-navigation.yml","Main Navigation","shared/ja-jp/main-navigation.yml","shared/ja-jp/main-navigation",{"_path":439,"_dir":24,"_draft":6,"_partial":6,"_locale":7,"title":440,"button":441,"config":446,"_id":448,"_type":16,"_source":18,"_file":449,"_stem":450,"_extension":21},"/shared/ja-jp/banner","GitLab Duo Agent Platformがパブリックベータ版で利用可能になりました！",{"text":442,"config":443},"ベータ版を試す",{"href":444,"dataGaName":445,"dataGaLocation":30},"/ja-jp/gitlab-duo/agent-platform/","duo banner",{"layout":447},"release","content:shared:ja-jp:banner.yml","shared/ja-jp/banner.yml","shared/ja-jp/banner",{"_path":452,"_dir":24,"_draft":6,"_partial":6,"_locale":7,"data":453,"_id":657,"_type":16,"title":658,"_source":18,"_file":659,"_stem":660,"_extension":21},"/shared/ja-jp/main-footer",{"text":454,"source":455,"edit":461,"contribute":466,"config":471,"items":476,"minimal":649},"GitはSoftware Freedom Conservancyの商標です。当社は「GitLab」をライセンスに基づいて使用しています",{"text":456,"config":457},"ページのソースを表示",{"href":458,"dataGaName":459,"dataGaLocation":460},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":462,"config":463},"このページを編集",{"href":464,"dataGaName":465,"dataGaLocation":460},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":467,"config":468},"ご協力をお願いします",{"href":469,"dataGaName":470,"dataGaLocation":460},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":472,"facebook":473,"youtube":474,"linkedin":475},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[477,500,554,587,621],{"title":48,"links":478,"subMenu":483},[479],{"text":480,"config":481},"DevSecOpsプラットフォーム",{"href":57,"dataGaName":482,"dataGaLocation":460},"devsecops platform",[484],{"title":190,"links":485},[486,490,495],{"text":487,"config":488},"プランの表示",{"href":192,"dataGaName":489,"dataGaLocation":460},"view plans",{"text":491,"config":492},"Premiumを選ぶ理由",{"href":493,"dataGaName":494,"dataGaLocation":460},"/ja-jp/pricing/premium/","why premium",{"text":496,"config":497},"Ultimateを選ぶ理由",{"href":498,"dataGaName":499,"dataGaLocation":460},"/ja-jp/pricing/ultimate/","why ultimate",{"title":501,"links":502},"ソリューション",[503,508,511,513,518,523,527,530,533,538,540,542,544,549],{"text":504,"config":505},"デジタルトランスフォーメーション",{"href":506,"dataGaName":507,"dataGaLocation":460},"/ja-jp/topics/digital-transformation/","digital transformation",{"text":509,"config":510},"セキュリティとコンプライアンス",{"href":138,"dataGaName":139,"dataGaLocation":460},{"text":123,"config":512},{"href":106,"dataGaName":107,"dataGaLocation":460},{"text":514,"config":515},"アジャイル開発",{"href":516,"dataGaName":517,"dataGaLocation":460},"/ja-jp/solutions/agile-delivery/","agile delivery",{"text":519,"config":520},"クラウドトランスフォーメーション",{"href":521,"dataGaName":522,"dataGaLocation":460},"/ja-jp/topics/cloud-native/","cloud transformation",{"text":524,"config":525},"SCM",{"href":120,"dataGaName":526,"dataGaLocation":460},"source code management",{"text":110,"config":528},{"href":112,"dataGaName":529,"dataGaLocation":460},"continuous integration & delivery",{"text":162,"config":531},{"href":164,"dataGaName":532,"dataGaLocation":460},"value stream management",{"text":534,"config":535},"GitOps",{"href":536,"dataGaName":537,"dataGaLocation":460},"/ja-jp/solutions/gitops/","gitops",{"text":175,"config":539},{"href":177,"dataGaName":178,"dataGaLocation":460},{"text":180,"config":541},{"href":182,"dataGaName":183,"dataGaLocation":460},{"text":185,"config":543},{"href":187,"dataGaName":188,"dataGaLocation":460},{"text":545,"config":546},"教育",{"href":547,"dataGaName":548,"dataGaLocation":460},"/ja-jp/solutions/education/","education",{"text":550,"config":551},"金融サービス",{"href":552,"dataGaName":553,"dataGaLocation":460},"/ja-jp/solutions/finance/","financial services",{"title":195,"links":555},[556,558,560,562,565,567,571,573,575,577,579,581,583,585],{"text":207,"config":557},{"href":209,"dataGaName":210,"dataGaLocation":460},{"text":212,"config":559},{"href":214,"dataGaName":215,"dataGaLocation":460},{"text":217,"config":561},{"href":219,"dataGaName":220,"dataGaLocation":460},{"text":222,"config":563},{"href":224,"dataGaName":564,"dataGaLocation":460},"docs",{"text":245,"config":566},{"href":247,"dataGaName":248},{"text":568,"config":569},"お客様の成功事例",{"href":570,"dataGaLocation":460},"/customers/",{"text":240,"config":572},{"href":242,"dataGaName":243,"dataGaLocation":460},{"text":250,"config":574},{"href":252,"dataGaName":253,"dataGaLocation":460},{"text":263,"config":576},{"href":265,"dataGaName":266,"dataGaLocation":460},{"text":255,"config":578},{"href":257,"dataGaName":258,"dataGaLocation":460},{"text":268,"config":580},{"href":270,"dataGaName":271,"dataGaLocation":460},{"text":273,"config":582},{"href":275,"dataGaName":276,"dataGaLocation":460},{"text":278,"config":584},{"href":280,"dataGaName":281,"dataGaLocation":460},{"text":283,"config":586},{"href":285,"dataGaName":286,"dataGaLocation":460},{"title":301,"links":588},[589,591,593,595,597,599,601,605,610,612,614,616],{"text":308,"config":590},{"href":310,"dataGaName":303,"dataGaLocation":460},{"text":313,"config":592},{"href":315,"dataGaName":316,"dataGaLocation":460},{"text":321,"config":594},{"href":323,"dataGaName":324,"dataGaLocation":460},{"text":326,"config":596},{"href":328,"dataGaName":329,"dataGaLocation":460},{"text":331,"config":598},{"href":333,"dataGaName":334,"dataGaLocation":460},{"text":336,"config":600},{"href":338,"dataGaName":339,"dataGaLocation":460},{"text":602,"config":603},"Sustainability",{"href":604,"dataGaName":602,"dataGaLocation":460},"/sustainability/",{"text":606,"config":607},"ダイバーシティ、インクルージョン、ビロンギング（DIB）",{"href":608,"dataGaName":609,"dataGaLocation":460},"/ja-jp/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":341,"config":611},{"href":343,"dataGaName":344,"dataGaLocation":460},{"text":351,"config":613},{"href":353,"dataGaName":354,"dataGaLocation":460},{"text":356,"config":615},{"href":358,"dataGaName":359,"dataGaLocation":460},{"text":617,"config":618},"現代奴隷制の透明性に関する声明",{"href":619,"dataGaName":620,"dataGaLocation":460},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":37,"links":622},[623,625,627,629,634,639,644],{"text":37,"config":624},{"href":39,"dataGaName":40,"dataGaLocation":460},{"text":369,"config":626},{"href":371,"dataGaName":372,"dataGaLocation":460},{"text":374,"config":628},{"href":376,"dataGaName":377,"dataGaLocation":460},{"text":630,"config":631},"ステータス",{"href":632,"dataGaName":633,"dataGaLocation":460},"https://status.gitlab.com/","status",{"text":635,"config":636},"利用規約",{"href":637,"dataGaName":638,"dataGaLocation":460},"/terms/","terms of use",{"text":640,"config":641},"プライバシーに関する声明",{"href":642,"dataGaName":643,"dataGaLocation":460},"/ja-jp/privacy/","privacy statement",{"text":645,"config":646},"Cookieの設定",{"dataGaName":647,"dataGaLocation":460,"id":648,"isOneTrustButton":92},"cookie preferences","ot-sdk-btn",{"items":650},[651,653,655],{"text":635,"config":652},{"href":637,"dataGaName":638,"dataGaLocation":460},{"text":640,"config":654},{"href":642,"dataGaName":643,"dataGaLocation":460},{"text":645,"config":656},{"dataGaName":647,"dataGaLocation":460,"id":648,"isOneTrustButton":92},"content:shared:ja-jp:main-footer.yml","Main Footer","shared/ja-jp/main-footer.yml","shared/ja-jp/main-footer",{"featuredPost":662,"allPosts":685,"totalPages":1362,"initialPosts":1363},{"_path":663,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":664,"content":669,"config":678,"_id":681,"_type":16,"title":682,"_source":18,"_file":683,"_stem":684,"_extension":21},"/ja-jp/blog/gitlab-18-04-release",{"config":665,"title":666,"description":667,"ogImage":668},{"noIndex":6},"GitLab 18.4リリース","GitLab 18.4でリリースした最新機能を公開します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1758202527/zbdm4mehauv3poqetyhk.png",{"category":14,"tags":670,"title":666,"description":667,"body":673,"heroImage":674,"authors":675,"date":677},[671,672,14,110],"releases","AI/ML","本ブログは、[GitLab 18.4 Release](https://about.gitlab.com/releases/2025/09/18/gitlab-18-4-released/)の抄訳です。内容に相違がある場合は、原文が優先されます。\n\n## **GitLab Duo Model Selection（モデル選択）とGitLab Knowledge Graph（ナレッジグラフ）を搭載したGitLab 18.4をリリース**\n\nこのたび、GitLab 18.4のリリースを発表しました。このリリースでは、GitLab Duo Model Selectionの一般提供、GitLab Knowledge Graph、GitLab Duoでのエンドユーザーモデル選択機能の提供開始、さらにCI/CDジョブトークンによるGitプッシュリクエストの認証機能など、さまざまな機能が追加されました。\n\nこれらの機能は、今回のリリースに含まれる19項目の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLab 18.4には、GitLabコミュニティのユーザーから136件ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。\n\n来月のリリースで予定されている内容を先取りするには、[今後のリリースページ ](https://www.claudeusercontent.com/?errorReportingMode=parent#)をご覧ください。\n\n## **Q&A + コード: GitLab 18.4の詳細とコントリビューターコミュニティの発展**\n\n次回のGitLab Developer Showでは、GitLab 18.4の最新機能を詳しく解説し、活発なコントリビューターコミュニティの育成についてお話しします。ご質問やライブコードの実演をご覧いただきながら、GitLabとともに成長する方法を具体的にご紹介します。\n\n👉 [こちらから登録](https://www.linkedin.com/events/7373772262312906753/)\n\n**GitLab 18.4では、GitLab Duo Model SelectionとGitLab Duo Agent Platform（GitLab Duo Self-Hosted）が追加されました**\n\n[クリックしてSNSで共有しましょう！](http://twitter.com/share?text=GitLab+18.4+released+with+GitLab+Duo+Model+Selection+and+GitLab+Knowledge+Graph&url=https://about.gitlab.com/releases/2025/09/18/gitlab-18-4-released/&hashtags=)\n\n![notable-contributor-logo](https://about.gitlab.com/images/notable-contributor-logo.svg)\n\n## 今月の[注目コントリビューター](https://contributors.gitlab.com/docs/notable-contributors)は[Patrick Rice](https://gitlab.com/PatrickRice)さんです\n\nPatrick Riceさんは、コントリビューター、メンテナー、メンターとして、GitLabオープンソースコミュニティへの卓越したコントリビュートを継続されています。過去1年間でトップ5のコントリビューターとなったPatrickさんは、[GitLab Terraform Provider](https://gitlab.com/gitlab-org/terraform-provider-gitlab)および[Client-go](http://client-go)プロジェクトのメンテナンスを担当し、機能追加、リリース管理、イシューのトリアージ、コミュニティのオンボーディングに取り組まれています。コントリビューターからプロジェクトメンテナーへと成長を遂げられ、「誰もがコントリビュートできる」というGitLabのミッションを体現しています。\n\nPatrickさんの活動はコードのコントリビュートにとどまらず、コミュニティ構築とコーチングにまで及び、新しいコントリビューターの参加と成長をサポートしています。以前には、[17.11の注目コントリビューター賞](https://about.gitlab.com/releases/2025/04/17/gitlab-17-11-released/#notable-contributor)を受賞したHeidi Berry氏をノミネート、支援しました。また、[GitLab for Education](https://about.gitlab.com/solutions/education/)チームと知見を共有し、学生にGitLabを学習してもらうことで次世代のデベロッパー育成にもコントリビュートしています。\n\n「Terraform ProviderとClient-goプロジェクトでの協力に、新しいコントリビューターの方々にぜひ参加してもらいたいと思います。私たちのコミュニティには、もっと多くの仲間が必要です。」とPatrickさんは言います。\n\nPatrickさんを今回の賞にノミネートした[Lee Tickett](https://gitlab.com/leetickett-gitlab)（GitLab Staff Fullstack Engineer）はPatricさんついて「PatrickさんはGitLabチームとお客様を継続的に支援し続けています。」と述べています。[Timo Furrer](https://gitlab.com/timofurrer)（GitLab Senior Backend Engineer）もノミネートを支援し、「Terraform ProviderとClient-goへの日々のコントリビュートに加え、GitLab Terraform Providerの可能性を実演することで、IaCジャーニーにおけるGitLabのお客様を直接支援しています」と付け加えました。\n\nPatrickさんはKinglandのエンタープライズアーキテクトで、[GitLab Community Core Team](https://about.gitlab.com/community/core-team/)のメンバーでもあります。今回が2回目の注目コントリビューター賞受賞で、[初回は2023年1月のGitLab 15.8](https://about.gitlab.com/releases/2023/01/22/gitlab-15-8-released/#mvp)でした。\n\n継続的なコントリビュートとGitLabのお客様へのサポート、そしてオープンソースコミュニティの成長へのご尽力に対し、Patrickさんに深く感謝いたします！\n\n## **GitLab 18.4でリリースされた主な改善点**\n\n### **GitLab Duo Model Selection（モデル選択）一般提供開始**\n\n> GitLab.com: Premium、Ultimate、Duo Core、Duo Pro、Duo Enterprise\\\n> Self-Managed: Premium、Ultimate、Duo Core、Duo Pro、Duo Enterprise\\\n> GitLab Dedicated: Ultimate、Duo Core、Duo Pro、Duo Enterprise\n\nGitLab Duo Model Selectionの一般提供を開始しました。開発ワークフローで使用するAIモデルの選択を組織がより細かく管理できるようになります。\n\nGitLab.comのトップレベルグループオーナー、Self-ManagedおよびDedicatedの管理者は、GitLabホスト型AIゲートウェイ経由でアクセスするGitLab Duo機能において、複数のGitLab AIモデルベンダーの中から特定のモデルを選択できるようになりました。\n\nGitLab.com上の複数ネームスペースに参加しているGitLabユーザーは、すべての開発コンテキストでAIモデル設定を統一するため、デフォルトのネームスペースの設定も可能です。GitLab Duo Model Selectionの詳細については、[ブログ記事](https://about.gitlab.com/blog/speed-meets-governance-model-selection-comes-to-gitlab-duo/)をご覧ください。\n\n[ドキュメント](https://docs.gitlab.com/user/gitlab_duo/model_selection/#select-an-llm-for-a-feature)\\\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/18818)\n\n![model_selection_gtm](https://about.gitlab.com/images/18_4/model_selection_gtm.png)\n\n### **GitLab Knowledge Graph（ナレッジグラフ）**\n\n> GitLab.com: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\\\n> GitLab Dedicated: Ultimate\n\nGitLab Knowledge Graphは、コードベース全体における豊富なコードインテリジェンス機能を提供します。デベロッパーはより多くのコンテキストを基にプロジェクトを理解、操作できるようになり、変更の計画立案、影響分析、GitLab Duoエージェントと連携した開発タスクの効率化が図れます。\n\nGitLab Duo Agent Platformでは、Knowledge Graphを活用してAIエージェントの精度を向上させます。コードベース全体のファイルと定義をマッピングすることで、Knowledge GraphはDuoエージェントがローカルワークスペース全体の構造を理解するための拡張コンテキストを提供し、複雑な質問に対してより迅速で正確な回答を返します。\n\nこの機能はベータ版です。[イシュー160](https://gitlab.com/gitlab-org/rust/knowledge-graph/-/issues/160)でフィードバックをお寄せください。\n\n[ドキュメント](https://gitlab-org.gitlab.io/rust/knowledge-graph/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/17514)\n\n![KnowledgeGraph](https://about.gitlab.com/images/18_4/KnowledgeGraph.png)\n\n### **GitLab Duoでエンドユーザーによるモデル選択が可能に**\n\n> GitLab.com: Premium、Ultimate、Duo Core、Duo Pro、Duo Enterprise\n\nGitLab Duoでエンドユーザーがモデルを選択できる機能が、GitLab.comでパブリックベータ版として提供開始されました。ユーザーはGitLab UIから直接GitLab Duo Agentic Chatで使用したいモデルを選択できるようになり、ニーズに合わせたAIサポートを受けられます。\n\nGitLab.comのネームスペースオーナーが許可している場合、エンドユーザーはGitLab Duo Agentic Chatで利用できるGitLab AIベンダーのモデルから選択できます。ネームスペースオーナーは、これまで通りネームスペース設定で組織全体のモデルを指定することも、エンドユーザーによるモデル選択を許可することもできます。\n\n利用を開始するには、GitLab Duo Agentic Chatでモデルのドロップダウンメニューから、希望するモデルを選択してください。なお、モデルを変更すると新しい会話が開始され、選択した設定は今後のセッションでも保存されます。\n\n[ドキュメント](https://docs.gitlab.com/user/gitlab_duo/model_selection/#select-a-model-to-use-in-gitlab-duo-agentic-chat)\\\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/19251)\n\n![end_user_model_selection](https://about.gitlab.com/images/18_4/end_user_model_selection.png)\n\n### **CI/CDジョブトークンによるGitプッシュリクエストの認証**\n\n> GitLab.com: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\\\n> GitLab Dedicated: Ultimate\n\nプロジェクトで生成されるCI/CDジョブトークンを使用して、プロジェクトリポジトリへのGitプッシュリクエストの認証が行えるようになりました。UIの「ジョブトークンの権限」設定、またはプロジェクトのREST APIエンドポイントの[ci_push_repository_for_job_token_allowed](https://docs.gitlab.com/api/projects/#edit-a-project)パラメータで有効化できます。\n\n[ドキュメント](https://docs.gitlab.com/ci/jobs/ci_job_token/#allow-git-push-requests-to-your-project-repository)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/389060)\n\n![job_token_push](https://about.gitlab.com/images/18_4/job_token_push.png)\n\n### **GitLab Duoのコンテキスト除外機能**\n\n> GitLab.com: Premium、Ultimate、Duo Pro、Duo Enterprise\\\n> Self-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\\\n> GitLab Dedicated: Ultimate、Duo Pro、Duo Enterprise\n\nGitLab Duoのコンテキスト除外機能を使うことで、GitLab Duoが参照するコンテキストから除外したいものを指定できます。パスワードファイルや設定ファイルなどの機密情報を保護したい場合に便利です。特定のファイル、ディレクトリ、ファイル形式、またはこれらを組み合わせた除外設定が可能です。\n\nこの機能は現在ベータ版です。[イシュー566244](https://gitlab.com/gitlab-org/gitlab/-/issues/566244)でGitLab Duoのコンテキスト除外機能についてフィードバックをお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/user/gitlab_duo/context/#exclude-context-from-gitlab-duo)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/17124)\n\n![duo-context-exclusion](https://about.gitlab.com/images/18_4/duo-context-exclusion.png)\n\n### **GitLab DedicatedのAWSリージョンサポート拡大**\n\n> GitLab Dedicated: Ultimate\n\nGitLab DedicatedがすべてのAWSリージョンでのデプロイに対応し、プライマリ、セカンダリ、バックアップのデプロイ先として、[より多くのリージョン](https://docs.gitlab.com/subscriptions/gitlab_dedicated/data_residency_and_high_availability/#available-aws-regions)から選択できるようになりました。\n\nこの対応拡大は、GitLab Dedicatedの高可用性とディザスターリカバリー基準を満たすio2ディスクがAWSの全リージョンで利用可能になったことで実現しました。\n\n新しく対応したリージョンは、スイッチボードでGitLab Dedicatedインスタンスをプロビジョニングする際に選択できます。\n\n[ドキュメント](https://docs.gitlab.com/subscriptions/gitlab_dedicated/data_residency_and_high_availability/#available-aws-regions)\\\n[イシュー](https://about.gitlab.com/direction/gitlab_dedicated/#theme-global-availability)\n\n![switchboard-expanded-aws-regions](https://about.gitlab.com/images/18_4/switchboard-expanded-aws-regions.png)\n\n### **異なるブランチに対するCI/CDパイプラインシミュレーション**\n\n> GitLab.com: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\\\n> GitLab Dedicated: Ultimate\n\nこれまで、パイプラインエディターの「検証」タブで変更内容を検証する際、デフォルトブランチでのシミュレーション実行のみに限定されていました。このリリースで機能を拡張し、任意のブランチを指定してパイプラインシミュレーションを実行できるようになりました。この改善により、パイプラインのテストと検証における柔軟性が大幅に向上し、安定ブランチや機能ブランチなど、さまざまなケースでパイプラインが想定通りに動作するかを確認できます。\n\n[ドキュメント](https://docs.gitlab.com/ci/pipeline_editor/#validate-cicd-configuration)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/482676)\n\n![branch_selector](https://about.gitlab.com/images/18_4/branch_selector.png)\n\n## GitLab 18.4リリースに含まれるその他の改善点\n\n\\>2025年9月24日までに公開予定、[英語の原文](https://about.gitlab.com/releases/2025/09/18/gitlab-18-4-released/#other-improvements-in-gitlab)をご参照ください\n\n## バグ修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。\n\n18.4で提供されたすべてのバグ修正、パフォーマンスの強化、UI改善を確認するには、以下のリンクをクリックしてください。\n\n* [バグ修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=18.4)\n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=18.4)\n* [UIの改善](https://papercuts.gitlab.com/?milestone=18.4)\n\n## 非推奨事項\n\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n## 削除された機能と破壊的な変更\n\n削除されたすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n* [Bitnami PostgreSQL and Redis images in GitLab chart](https://docs.gitlab.com/ee/update/deprecations.html#bitnami-postgresql-and-redis-images-in-gitlab-chart)\n\n### 変更履歴\n\n変更内容をすべて表示するには、次のページから変更履歴を確認してください。\n\n* [](\u003C>)[GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)\n* [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)\n* [VS CodeのGitLab Workflow](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)\n* [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n### インストール\n\nGitLabを新規にインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/ja-jp/install/)をご覧ください。\n\n### 更新事項\n\n[更新ページ](https://about.gitlab.com/ja-jp/update/)をご覧ください。\n\n### ご不明な点がある場合\n\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスして質問を投稿してください。\n\n### GitLabサブスクリプションプラン\n\n* [Free](https://about.gitlab.com/pricing/)\n  ユーザー向けの永久無料機能を提供\n* [Premium](https://about.gitlab.com/pricing/premium/)\n  チームの生産性と調整を強化\n* [Ultimate](https://about.gitlab.com/pricing/ultimate/)\n  組織全体のセキュリティ、コンプライアンス、プランニングに対応\n\nGitLabのすべての機能を[無料](https://about.gitlab.com/free-trial/?hosted=saas)でお試しいただけます。\n\n\n\n*監修：ソリス ジェレズ / Jerez Solis [@jerezs](https://gitlab.com/jerezs)\n（GitLab合同会社 ソリューションアーキテクト本部 ソリューションアーキテクト）*\n\n### 過去の日本語リリース情報\n\n* [GitLab 18.4](https://about.gitlab.com/ja-jp/blog/gitlab-18-04-release)\n* [GitLab 18.3](https://about.gitlab.com/ja-jp/blog/gitlab-18-03-release)\n* [](\u003C>)[GitLab 18.2](https://about.gitlab.com/ja-jp/blog/gitlab-18-02-release)\n* [GitLab 18.1](https://about.gitlab.com/ja-jp/blog/gitlab-18-01-release)\n* [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n* [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n* [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n* [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)\n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)\n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)\n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)\n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)\n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)[](\u003C>)","https://res.cloudinary.com/about-gitlab-com/image/upload/v1758160154/ckr9nufkx3n2t0rp0iwd.png",[676],"GitLab Japan Team","2025-09-19",{"featured":92,"template":679,"slug":680},"BlogPost","gitlab-18-04-release","content:ja-jp:blog:gitlab-18-04-release.yml","Gitlab 18 04 Release","ja-jp/blog/gitlab-18-04-release.yml","ja-jp/blog/gitlab-18-04-release",[686,706,726,744,763,788,812,832,851,870,892,912,932,951,971,991,1012,1031,1053,1073,1092,1112,1132,1152,1172,1191,1211,1234,1258,1278,1297,1317,1336],{"_path":687,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":688,"content":693,"config":700,"_id":702,"_type":16,"title":703,"_source":18,"_file":704,"_stem":705,"_extension":21},"/ja-jp/blog/gitlab-18-03-release",{"config":689,"ogImage":690,"title":691,"description":692},{"noIndex":92},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1755780180/rjsjdqp84qgmlu698wfc.png","GitLab 18.3 リリース","GitLab 18.3でリリースした最新機能をご紹介します。",{"heroImage":690,"body":694,"authors":695,"updatedDate":696,"date":697,"title":691,"tags":698,"description":699,"category":14},"本ブログは、[GitLab 18.3 Release](https://about.gitlab.com/releases/2025/08/21/gitlab-18-3-released/)の抄訳です。内容に相違がある場合は、原文が優先されます。\n\n## Visual Studio向けDuo Agent Platform（ベータ版）と埋め込みビューを搭載したGitLab 18.3をリリース\n\nこのたび、GitLab 18.3のリリースを発表しました。このリリースでは、Visual Studio向けDuo Agent Platform（ベータ版）、埋め込みビュー、直接転送による移行、CI/CDジョブトークンの詳細な権限設定など、さまざまな機能が追加されました。\n\nこれらの機能は、今回のリリースに含まれる38以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLab 18.3には、GitLabコミュニティのユーザーから314件ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。\n\n来月のリリースで予定されている内容を先取りするには、[今後のリリースページ](https://about.gitlab.com/upcoming-releases/)をご覧ください。\n\n## 今月の[注目コントリビューター](https://contributors.gitlab.com/docs/notable-contributors)は[Ahmed Kashkoush](https://gitlab.com/ahmad-kashkoush)さんです\n\n\u003Cimg src=\"https://about.gitlab.com/images/notable-contributor-logo.svg\">\n\n18.3では、[Ahmed Kashkoush](https://gitlab.com/ahmad-kashkoush)さんを注目コントリビューターとして表彰いたします！\n\nAhmedさんはこの[Google Summer of Codeの参加](https://gitlab.com/ahmad-kashkoush/gsoc-2025-final-report)を通じて、[GitLab Web IDE](https://gitlab.com/gitlab-org/gitlab-web-ide)に優れたコントリビュートをもたらしました。彼は長年のコミュニティからの要望に直接応える重要なGit操作を一貫して提供してきました。彼の5つの重要なマージリクエストには、[コミットおよび強制プッシュ機能](https://gitlab.com/gitlab-org/gitlab-web-ide/-/merge_requests/497)、[更新確認メッセージ](https://gitlab.com/gitlab-org/gitlab-web-ide/-/merge_requests/540)、[コミット修正機能](https://gitlab.com/gitlab-org/gitlab-web-ide/-/merge_requests/507)、[ブランチ作成操作](https://gitlab.com/gitlab-org/gitlab-web-ide/-/merge_requests/534)、[ブランチ削除機能](https://gitlab.com/gitlab-org/gitlab-web-ide/-/merge_requests/539)が含まれています。\n\n新機能の実装に加え、AhmedさんはWeb IDEから既存のコミットを修正できる機能を追加しました。これは5年以上前にコミュニティから要望され、24の「いいね」を獲得していた機能です。彼の包括的なブランチ管理の実装により、Web IDEはローカル開発環境と機能的に同等に近づき、基本的なGit操作のためにインターフェース間を切り替える必要がなくなりました。Ahmedさんの作業は、Web IDEをより多くのデベロッパーに利用しやすくすることで、GitLabの「誰もがコントリビュートできる」という[ミッション](https://handbook.gitlab.com/handbook/company/mission/)の理念を形にしています。\n\nAhmedさんをGoogle Summer of Codeプログラムを通じてメンターとしてサポートしたGitLabのスタッフフロントエンドエンジニア[Enrique Alcántara](https://gitlab.com/ealcantara)によってノミネートされました。彼は次のように述べています。「Ahmedさんは実際のユーザーの問題を解決することに献身的です。彼の作業は、専念するコントリビューターがGitLabのコア機能を改善する上でどれほどの影響を与えることができるかを示しています。」\n\nAhmedさんのコントリビュートは、オープンソース開発におけるメンターシップとコミュニティコラボレーションの力を示し、ローカルセットアップに関係なくGitLabをより使いやすくしています。\n\nGitLab Web IDEへの素晴らしいコントリビュートを提供してくれたAhmedさんに感謝します！\n\n## **GitLab 18.3でリリースされた主な改善点**\n\n### **Visual Studio向けDuo Agent Platform（ベータ版）**\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nVisual Studio向けDuo Agent Platformのパブリックベータ版をリリースしました！このリリースにより、Visual StudioユーザーはDuo Agent Platformの高度なAI機能をIDE内で直接利用できるようになりました。\n\nDuo  Agent Platformは、ワークフローに2つの強力な機能をもたらします：\n\n* **Agentic Chat**：ファイルの作成と編集、パターンマッチングとgrepを使用したコードベースの検索、コードに関する質問への即座の回答など、会話型のタスクをVisual Studioから離れることなく素早く実行できます。\n* **エージェントフロー**：より大規模で複雑なタスクに、包括的な計画と実装サポートで取り組みます。エージェントフローは、イシュー、マージリクエスト、コミット、CI/CDパイプライン、セキュリティ脆弱性などのGitLabリソースを活用しながら、高レベルのアイデアをアーキテクチャとコードに変換するのに役立ちます。\n\nどちらの機能も、ドキュメント、コードパターン、プロジェクト情報全体で高度な検索を提供し、簡単な編集から詳細なプロジェクト分析まで、シームレスに移行できるようサポートします。\n\n今すぐVisual StudioでDuo Agent Platformベータ版をお試しいただき、開発ワークフローにおける新しいレベルの生産性とAI機能のサポートを体験してください。\n\n[ドキュメント](https://docs.gitlab.com/user/duo_agent_platform/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/editor-extensions/-/epics/179)\n\n[](https://gitlab.com/groups/gitlab-org/editor-extensions/-/epics/179)\n\n\u003Cfigure class=\"video_container\">\n\u003Ciframe src=\"https://www.youtube.com/embed/Pdjf5HxQUBQ?si=ouLMn2O8jTQ6y9Ql\" frameborder=\"0\" allowfullscreen=\"true\"> \u003C/iframe>\n\u003C/figure>\n\u003C!-- blank line -->\n\n### **埋め込みビュー（GLQLを活用）**\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nこのリリースで、GLQLを活用した埋め込みビューの一般提供を開始します。Wikiページ、エピックの説明、イシューコメント、マージリクエストなど、作業が行われる場所に直接、GitLabデータの動的でクエリ可能なビューを作成して埋め込むことができます。\n\n埋め込みビューにより、チームは画面を切り替えることなく作業の進捗を一箇所で追跡できます。使い慣れた構文を使用してイシュー、マージリクエスト、エピック、その他の作業アイテムを検索し、カスタマイズ可能なフィールドとフィルタリングを備えたテーブルまたはリスト表示で結果を確認できます。\n\n埋め込みビューは、静的なドキュメントをプロジェクトデータと同期を保つライブダッシュボードに変換し、チームがコンテキストを保ちながら、ワークフロー全体でコラボレーションを向上させることができます。\n\n埋め込みビューの改善に向けたご意見やご提案を、ぜひ[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509792)よりお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/user/glql/#embedded-views)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15008)\n\n\u003Cfigure class=\"video_container\">\n\u003Ciframe src=\"https://www.youtube.com/embed/DG_DL5r2GCM?si=6ATRXOF06qs0rMPS\" frameborder=\"0\" allowfullscreen=\"true\"> \u003C/iframe>\n\u003C/figure>\n\u003C!-- blank line -->\n\n### **直接転送による移行**\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\n直接転送による移行が一般提供されるようになりました。GitLabインスタンス間でGitLabグループとプロジェクトを直接転送で移行するには、GitLab UIまたは[REST API](https://docs.gitlab.com/ee/api/bulk_imports.html)を使用できます。\n\n[エクスポートファイルのアップロードによる移行](https://docs.gitlab.com/ee/user/project/settings/import_export.html#migrate-projects-by-uploading-an-export-file)と比較して、直接転送は：\n\n* 大規模なプロジェクトでより確実に動作します。\n* ソースインスタンスと宛先インスタンス間のバージョンギャップが大きい移行をサポートします。\n* 移行プロセスと結果に関するより良い洞察を提供します。\n\nGitLab.comでは、直接転送による移行はデフォルトで有効になっています。GitLab Self-ManagedおよびGitLab Dedicatedでは、管理者が[機能を有効にする](https://docs.gitlab.com/ee/administration/settings/import_and_export_settings.html#enable-migration-of-groups-and-projects-by-direct-transfer)必要があります。\n\n![直接転送による移行](https://about.gitlab.com/images/18_3/migration_history.png)\n\n### **CI/CDジョブトークンのきめ細かい権限設定**\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nパイプラインセキュリティがより柔軟になりました。ジョブトークンは、パイプライン内のリソースへのアクセスを提供する一時的な認証情報です。これまで、これらのトークンはユーザーから全権限を継承していたため、必要以上に広範なアクセス権限を持ってしまうことがありました。\n\n新しいジョブトークンのきめ細かい権限設定機能により、ジョブトークンがプロジェクト内でアクセスできる特定のリソースを正確に制御できるようになりました。これにより、CI/CDワークフローで最小権限の原則を適用し、CI/CDジョブトークンでプロジェクトにアクセスする際に、ジョブがタスクを完了するための必要最小限のアクセスのみを付与できます。\n\nパイプラインでの長期トークンへの依存を減らすために、[詳細権限機能のさらなる拡充](https://gitlab.com/groups/gitlab-org/-/epics/6310)に積極的に取り組んでいます。\n\n[ドキュメント](https://docs.gitlab.com/ci/jobs/fine_grained_permissions/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15258)\n\n[](https://gitlab.com/groups/gitlab-org/-/epics/15258)\n\n![CI/CDジョブトークンのきめ細かい権限設定](https://about.gitlab.com/images/18_3/sscs_authz_fine_grained_job_tokens.png)\n\n### **GitLab Duo Self-HostedでCode Reviewが利用可能に（ベータ版）**\n\n> Self-Managed: Premium、Ultimate、Duo Enterprise\n\nGitLab Duo Self-HostedでGitLab Duo Code Reviewを使用できるようになりました。この機能はGitLab Duo Self-Hostedでベータ版として提供され、Mistral、Meta Llama、Anthropic Claude、OpenAI GPTモデルファミリーをサポートしています。\n\nGitLab Duo Self-HostedでCode Reviewを使用して、データ主権を損なうことなく開発プロセスを加速させます。Code Reviewがマージリクエストをレビューすると、潜在的なバグを特定し、直接適用できる改善を提案します。Code Reviewを使用して、人間にレビューを依頼する前に変更を反復して改善します。\n\nCode Reviewに関するフィードバックは[イシュー517386](https://gitlab.com/gitlab-org/gitlab/-/issues/517386)までお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/#gitlab-duo-in-merge-requests)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/524929)\n\n[](https://gitlab.com/gitlab-org/gitlab/-/issues/524929)\n\n![GitLab Duo Self-HostedでCode Reviewが利用可能に（ベータ版）](https://about.gitlab.com/images/18_3/Self_Hosted_Code_Review-min.png)\n\n### **GitLab Duo Code Reviewのカスタム指示**\n\n> SaaS: Premium、Ultimate、Duo Enterprise\\\n> Self-Managed: Premium、Ultimate、Duo Enterprise\n\nGitLab Duo Code Reviewのカスタム指示で、プロジェクト全体で一貫したコードレビュー標準を適用します。globパターンを使用して異なるファイルタイプに特定のレビュー基準を定義し、言語固有の規約が最も重要な場所に確実に適用されるようにします。\n\nカスタム指示では、次のことが可能です：\n\n* チームのコードレビュー標準を記述する\n* globパターンを使用してファイル固有の指示を定義する\n* カスタム指示を参照した、明確にラベル付けされたフィードバックを確認する\n\nリポジトリにカスタム指示を含む[.gitlab/duo/mr-review-instructions.yaml](https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#customize-instructions-for-gitlab-duo-code-review)ファイルを作成するだけです。GitLab Duoは自動的にこれらの指示をレビューに組み込み、フィードバックを提供する際に特定の指示グループを引用します。\n\n[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/517386)でご意見やご提案をお寄せいただき、この機能の改善にご協力ください。\n\n[ドキュメント](https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#customize-instructions-for-gitlab-duo-code-review)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/545136)\n\n[](https://gitlab.com/gitlab-org/gitlab/-/issues/545136)\n\n![GitLab Duo Code Reviewのカスタム指示](https://about.gitlab.com/images/18_3/DCR-Instructions.png)\n\n### **GitLab Duo Self-Hostedに独自のモデルを持ち込む（ベータ版）**\n\n> Self-Managed: Premium、Ultimate、Duo Enterprise\n\nGitLab Duo Self-Hostedでは、GitLab Duo機能で使用する独自のモデルを持ち込むことができるようになりました。この機能はベータ版で、GitLab Duo Enterpriseをお使いのすべてのGitLab Self-Managedのお客様が利用できます。インスタンス管理者は、サポートされているGitLab Duo機能で使用する互換性のあるモデルを設定できます。\n\nこの機能により、GitLab Duo Self-Hostedの柔軟性は向上しますが、GitLabはすべてのGitLab Duo機能がすべての互換モデルで動作することをお約束できません。インスタンス管理者は、選択したモデルの互換性とパフォーマンスを検証してご確認いただく必要があります。なお、GitLabは、選択したモデルまたはプラットフォーム固有の問題については、GitLabからの技術サポートは提供されませんのでご了承ください。\n\n[ドキュメント](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#bring-your-own-compatible-model)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/517581)\n\n[](https://gitlab.com/gitlab-org/gitlab/-/issues/517581)\n\n![](https://about.gitlab.com/images/18_3/SH_compatible_models.png)\n\n### **GitLab Duo Self-Hostedでハイブリッドモデルが選択可能に（ベータ版）**\n\n> Self-Managed: Premium、Ultimate、Duo Enterprise\n\nGitLab Duo Self-HostedでGitLab AIベンダーモデルとプライベートに設定されたセルフホストモデルの組み合わせを使用できるようになりました。この機能はベータ版で、GitLab Self-ManagedですべてのGitLab Duo Enterpriseのお客様が利用できます。\n\nGitLab Duo Self-Hostedのハイブリッドモデルにより、GitLab Self-Managedインスタンス管理者は、セルフホストモデルとセルフホストAIゲートウェイ、またはGitLab AIベンダーモデルとGitLabホストのAIゲートウェイを、機能ごとに選択できるようになりました。これにより、管理者はセキュリティとスケーラビリティの要件のバランスを取ることができます。ハイブリッドモデル選択に関するフィードバックを提供するには、[イシュー561048](https://gitlab.com/gitlab-org/gitlab/-/issues/561048)をご覧ください。\n\n[ドキュメント](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/#decide-on-your-configuration-type)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/17192)\n\n[](https://gitlab.com/groups/gitlab-org/-/epics/17192)\n\n![GitLab Duo Self-Hostedでハイブリッドモデルが選択可能に（ベータ版）](https://about.gitlab.com/images/18_3/SH_Hybrid.png)\n\n### **コンプライアンスフレームワーク制御の違反の表示（ベータ版）**\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\n以前のコンプライアンス違反レポートは、グループ内のすべてのプロジェクトのマージリクエストアクティビティの全体的な概要を表示していました。検出可能なコンプライアンス違反は、職務分離の懸念に関連するもので、以下の内容でした：\n\n* マージリクエストの作成者が自分のマージリクエストを承認した場合を検出\n* マージリクエストが2つ未満の承認でマージされた場合を検出\n\nしかし、ユーザーフィードバックにより、違反分類が分かりにくく、実際のコンプライアンス用途にうまく適合しないことが判明しました。\n\nGitLab 18.3では、職務分離の範囲を超えて、コンプライアンスフレームワークのコンプライアンス制御と要件の違反を含むように違反レポートを大幅に強化しています。各カスタムコンプライアンスフレームワーク制御には、違反に関する詳細な情報を提供する関連監査イベントがあります。これには、誰が違反を犯したか、いつ発生したか、どのように修正するかといった内容が含まれ、ユーザー名とIPアドレス、さらに実行可能な修正提案も提供されます。\n\nこれらの改善により、コンプライアンスマネージャーは、組織が特定のコンプライアンスフレームワークに確実に準拠できるよう、より強力で関連性の高い情報を得られるようになります。非準拠を効果的に特定、修正、防止できるという安心感ももたらします。\n\n![コンプライアンスフレームワーク制御の違反の表示（ベータ版）](https://about.gitlab.com/images/18_3/compliance_link_violations_to_framework_controls.png)\n\n### **新しいWeb IDEソースコントロール操作**\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\n本リリースでは、Web IDEに追加のソースコントロール機能が追加されました。ブラウザから離れることなく、Gitワークフローをより効率的に管理できます。**ソースコントロール**パネルで、次のことができるようになりました：\n\n* ブランチの作成と削除。\n* 既存のブランチをベースとしてブランチを作成。\n* 最後のコミットを修正して素早く修正。\n* インターフェースから直接変更を強制プッシュ。\n\nこれらの機能強化により、Git操作が指先で行えるようになります。利用可能な機能については、[ソースコントロールを使用する](https://docs.gitlab.com/user/project/web_ide/#use-source-control)をご覧ください。\n\n[ドキュメント](https://docs.gitlab.com/user/project/web_ide/#use-source-control)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/11142)\n\n[](https://gitlab.com/groups/gitlab-org/-/epics/11142)\n\n![新しいWeb IDEソースコントロール操作](https://about.gitlab.com/images/18_3/webide-source-control.gif)\n\n### **GitLab CI/CDのAWS Secrets Managerサポート**\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nAWS Secrets Managerに保存されたシークレットをCI/CDジョブで簡単に取得して使用できるようになりました。AWSとの新しい統合により、GitLab CI/CDを通じてAWS Secrets Managerと対話するプロセスが簡素化され、AWSのお客様のビルドとデプロイプロセスの合理化に役立ちます！\n\n[GitLabの共同開発プログラム](https://about.gitlab.com/community/co-create/)を通じてこの機能の開発にご協力いただいた[Markus Siebert](https://gitlab.com/m-s-db)さんと[Henry Sachs](https://gitlab.com/DerAstronaut)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ci/secrets/aws_secrets_manager/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/17822)\n\n[](https://gitlab.com/groups/gitlab-org/-/epics/17822)\n\n![](https://about.gitlab.com/images/18_3/AWS_image.png)\n\n### **カスタム管理者ロール**\n\n> Self-Managed: Ultimate\n\nカスタム管理者ロールは、GitLab Self-ManagedおよびGitLab Dedicatedインスタンスの管理エリアに詳細な権限をもたらします。管理者は、フルアクセスを付与する代わりに、ユーザーが必要とする特定の機能のみにアクセスできる専門的なロールを作成できるようになりました。この機能により、組織は管理機能に対する最小権限の原則を適用し、過剰な権限によるセキュリティリスクを削減しつつ、運用効率を向上させることができます。\n\nご質問がある場合、実装経験を共有したい場合、または潜在的な改善について当社のチームと直接関わりたい場合は、[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509376)をご覧ください。\n\n[ドキュメント](https://docs.gitlab.com/user/custom_roles/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15069)\n\n[](https://gitlab.com/groups/gitlab-org/-/epics/15069)\n\n![カスタム管理者ロール](https://about.gitlab.com/images/18_3/sscs_authz_custom_admin_role.png)\n\n## GitLab 18.3リリースに含まれるその他の改善点\n\n### **エピックの担当者、マイルストーンなどを一括編集**\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nグループ内でより多くのエピック属性を一括編集できるようになりました。ラベルに加えて、複数のエピックの担当者、ヘルスステータス、サブスクリプション、機密性、マイルストーンを一度に更新できます。\n\nこの機能強化により、複数のエピックに同じ変更を同時に適用できるため、大量のエピックの管理が効率化されます。\n\n[ドキュメント](https://docs.gitlab.com/user/group/epics/manage_epics/#bulk-edit-epics)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/11901)\n\n![エピックの担当者、マイルストーンなどを一括編集](https://about.gitlab.com/images/18_3/bulk_edit_epics.png)\n\n### **Wiki機能の強化**\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nこのリリースでは、3つの主要な改善によりWiki機能が強化されます：Wikiページへのサブスクライブ、ページ編集中のWikiコメントの表示、Wikiページコメントの並べ替えができるようになりました。\n\nこれらの機能強化により、チームはドキュメントでより効果的にコラボレーションできます：\n\n* コンテキスト内で直接コンテンツについて議論する。\n* 改善や修正を提案する。\n* ドキュメントを正確かつ最新の状態に保つ。\n* 知識と専門知識を共有する。\n\nこれらのアップデートにより、GitLab Wikiは直接のフィードバックとディスカッションを通じてプロジェクトと共に進化する生きたドキュメントとして活用できます。\n\n[ドキュメント](https://docs.gitlab.com/user/discussions/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16403)\n\n### **浅いクローニングによるワークスペースの高速起動**\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nワークスペースは、起動時間を短縮するために浅いクローニングを使用するようになりました。初期化中、GitLabは完全なGit履歴ではなく、最新のコミット履歴のみをダウンロードします。ワークスペース起動後、Gitはバックグラウンドで浅いクローンを完全なクローンに変換します。\n\nこの機能は新しいワークスペースすべてに自動適用され、設定は不要で、開発ワークフローに影響を与えません。\n\n[ドキュメント](https://docs.gitlab.com/user/workspace/#shallow-cloning)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/543982)\n\n### **Kubernetes 1.33サポート**\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLabはKubernetesバージョン1.33に完全対応しました。アプリをKubernetesにデプロイする場合、接続クラスターを最新バージョンにアップグレードして、機能をすべて利用できます。\n\n詳細については、[GitLab機能でサポートされているKubernetesバージョン](https://docs.gitlab.com/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features)をご覧ください。\n\n[ドキュメント](https://docs.gitlab.com/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/538906)\n\n### **簡潔なDASTジョブ出力**\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nGitLab 18.3では、動的解析セキュリティテストのジョブ出力が改善されました。\n\n改善されたジョブ出力は、スキャン結果の理解や、失敗のトラブルシューティングに役立つ、明確で整理された情報を提供します。\n\nジョブ出力の各セクションは簡潔で直感的であり、出力の下部にトラブルシューティングドキュメントへのリンクがあります。簡潔なジョブ出力を上書きするには、DAST設定で`DAST_FF_DIAGNOSTIC_JOB_OUTPUT: \"true\"`を設定します。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/dast/browser/troubleshooting/#what-is-dast-doing)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/18342)\n\n### **ライセンス情報のユーザー定義ソース**\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nユーザーは、ライセンス情報の優先ソース（GitLabライセンスデータベースまたはCycloneDX SBOMレポート）を選択できるようになりました。これにより、オープンソース依存関係のライセンス情報取得がより柔軟になります。ライセンス情報のソースを指定する場合は、[セキュリティ設定UI](https://docs.gitlab.com/user/application_security/detect/security_configuration/#with-the-ui)で選択できます。デフォルトでは、ライセンス情報のソースとしてSBOMデータを使用します。\n\n[ドキュメント\n](https://docs.gitlab.com/user/compliance/license_scanning_of_cyclonedx_files/#use-cyclonedx-report-as-a-source-of-license-information)[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/501662)\n\n### **脆弱性レポートでOWASP 2021によるグループ化**\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nプロジェクトとグループの脆弱性レポートで、脆弱性をOWASP Top 10 2021カテゴリでグループ化できるようになりました。GitLab.comおよびGitLab Dedicatedインスタンスでのみ利用可能です。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/vulnerability_report/#advanced-vulnerability-management)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/532703)\n\n![脆弱性レポートでOWASP 2021によるグループ化](https://about.gitlab.com/images/18_3/group-by-owasp-2021-on-vulnerability-report.png)\n\n### **セキュリティポリシー監査イベント**\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nGitLab Ultimateは、セキュリティポリシー管理のための包括的な監査イベントが利用できるようになり、各セキュリティポリシープロジェクト内でイベントが整理、一元化されます。\n\nセキュリティチームは次のことができるようになります：\n\n* 詳細なメタデータでポリシーのすべての変更を追跡する。\n* スキャンとパイプライン実行の失敗を含む、実施の失敗を監視する。\n* スキップされたスキャン実行とパイプライン実行パイプラインを監視する。\n* ポリシー違反でマージされたMRを含む、各プロジェクト内でのポリシー違反を検出する。\n* 制限を超えた場合にアラートを受け取る。\n* ポリシー設定エラーを検出する。\n* 大量処理向けストリーミング専用オプションを使用する。\n\n新しい監査イベントには以下が含まれます：\n\n* [security_policy_create](https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_create.yml)\n* [security_policy_delete](https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_delete.yml)\n* [security_policy_update](https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_update.yml)\n* [security_policy_merge_request_merged_with_policy_violations](https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_merge_request_merged_with_policy_violations.yml)\n* [security_policy_yaml_invalidated](https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_yaml_invalidated.yml)\n* [security_policies_limit_exceeded](https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_yaml_invalidated.yml)\n* [security_policy_violations_detected](https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_violations_detected.yml)（ストリーミングのみ）\n* [security_policy_pipeline_failed](https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_pipeline_failed.yml)（ストリーミングのみ）\n* [security_policy_pipeline_skipped](https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/config/audit_events/types/security_policy_pipeline_skipped.yml)（ストリーミングのみ）\n* [merge_request_branch_bypassed_by_security_policy](https://gitlab.com/gitlab-org/gitlab/-/blob/master/config/audit_events/types/merge_request_branch_bypassed_by_security_policy.yml)\n\nこの機能強化により、ポリシーの変更、設定エラー、実施ギャップを把握できるようになり、セキュリティ体制が強化され、より迅速なインシデント対応と徹底的な監査機能が可能になります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/audit_event_streaming/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15869)\n\n![セキュリティポリシー監査イベント](https://about.gitlab.com/images/18_3/policy-audit-events-example-image.png)\n\n### **サービスアカウントの追加メール設定オプション**\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nデフォルトでは、GitLabが新しいサービスアカウント用に自動的にメールアドレスを生成します。今回のアップデートにより、組織はUIでサービスアカウントにカスタムメールアドレスを設定できるようになりました。以前は、カスタムメール設定はサービスアカウントAPIを通じてのみ可能でしたが、この改善により、組織は通知を指定されたメールアドレスにより確実に配信できます。\n\n[ドキュメント](https://docs.gitlab.com/user/profile/service_accounts/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/537976)\n\n### **インスタンスレベルのコンプライアンスとポリシー管理（ベータ版）**\n\n> Self-Managed: Ultimate\n\nエンタープライズユーザーは、複数のトップレベルグループ全体でコンプライアンスフレームワークとセキュリティポリシーを管理したいと考えています。これは、インスタンス内のすべてのグループが次の場合によくあります：\n\n* 同じコンプライアンスフレームワークを共有している（例：グループ内のすべてのプロジェクトがISO 27001標準に準拠する必要がある）\n* 同様のポリシーを実施している（例：すべてのグループで同じパイプライン実行ポリシーを共有している）\n\nGitLab 18.3では、GitLab Self-Managedインスタンス向けにコンプライアンスとセキュリティポリシー管理がベータ版で利用可能になりました。単一のトップレベルグループからコンプライアンスフレームワークとセキュリティポリシーを作成、設定、割り当て、GitLab Self-Managedインスタンス全体の他のすべてのトップレベルグループに適用できます。\n\nコンプライアンスとセキュリティポリシーのトップレベルグループを使用することで、コンプライアンスフレームワークとセキュリティポリシーを管理および編集できる信頼できる単一の情報源が確立されます。グループ管理者は、これらのコンプライアンスフレームワークとセキュリティポリシーをそれらのグループ内のすべてのプロジェクトに適用できます。\n\n選択したトップレベルのコンプライアンスとセキュリティポリシーグループから主要なフレームワークとポリシーを管理することにより、GitLab Self-Managedインスタンス全体で主要なコンプライアンスとセキュリティ要件の管理、実施が簡素化されます。ただし、各グループは、固有の状況やワークフローに対処するために、独自のコンプライアンスフレームワークとセキュリティポリシーを作成する権限は維持されます。\n\nこの機能は、GitLab Self-Managed向けに提供されています。GitLab.comおよびGitLab Dedicatedでは、既に単一のトップレベルグループまたはネームスペース内でポリシーを一元的に管理可能です。\n\n[ドキュメント](https://docs.gitlab.com/user/compliance/compliance_frameworks/centralized_compliance_frameworks/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15864)\n\n### **SAML SSOのセッションタイムアウト属性のサポート**\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nGitLabは、アイデンティティプロバイダー（IdP）からのSAMLアサーションに含まれる`SessionNotOnOrAfter`属性を自動的に検出、適用するようになりました。この属性が存在する場合、GitLabはユーザーセッションをIdPによって指定された時刻に期限切れに設定し、組織全体で統一されたセッション管理を実現します。設定変更は不要で、 IdPが属性を提供すれば、GitLabが自動的に指定された有効期限を適用します。\n\n[ドキュメント](https://docs.gitlab.com/user/group/saml_sso/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/262074)\n\n### **SSHキーのセキュリティ警告**\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLabは、ユーザーが弱いSSHキーをアップロードした際にUIにセキュリティ警告を表示するようになりました。この警告は、古いキータイプまたは不十分なビット長（2048ビット未満）のキーに対して表示されます。この変更により、SSHキーのセキュリティベストプラクティスをユーザーに周知し、より強固な暗号キーの利用を促進します。\n\n[ドキュメント](https://docs.gitlab.com/user/ssh/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/432624)\n\n### **GitLab Duo Self-Hostedで使用可能なモデルの追加**\n\n> Self-Managed: Premium、Ultimate、Duo Enterprise\n\nGitLab Duo Enterpriseをご利用のGitLab Self-Managedのお客様は、GitLab Duo Self-HostedでAnthropic Claude 4を利用できるようになりました。Claude 4はAWS Bedrockでサポートされています。また、オープンソースのOpenAI GPT OSS 20Bと120Bが実験的モデルとして追加され、vLLM、Azure OpenAI、AWS Bedrockで利用可能です。これらのモデルをGitLab Duo Self-Hostedで使用することに関するフィードバックは、[イシュー523918](https://gitlab.com/gitlab-org/gitlab/-/issues/523918)をご覧ください。\n\n[ドキュメント](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/560016)\n\n### **マイワークのグループ向け新しいナビゲーション体験**\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\n**マイワーク**のグループ概要を大幅に改善しました。これにより、グループの発見とアクセス方法が効率化されます。新しいタブ付きインターフェースでは、**メンバー**タブでアクセス可能なグループを包括的に表示し、**無効**タブで削除保留中のグループを確認できます。また、適切な権限を持つユーザー向けにリスト表示で**編集**と**削除**アクションを追加し、グループ管理を効率化しました。これらの改善により、重要なグループの検索と管理がより容易になります。\n\n新しいナビゲーションシステムの利用体験について、[エピック18401](https://gitlab.com/groups/gitlab-org/-/epics/18401)にご意見をお寄せください。フィードバックをお待ちしております！\n\n[ドキュメント](https://docs.gitlab.com/user/group/#view-groups)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/502487)\n\n![マイワークのグループ向け新しいナビゲーション体験](https://about.gitlab.com/images/18_3/tenant_scale_your_work_groups_update.png)\n\n### **GitLab Pagesサイトの一意のドメインのデフォルトを制御**\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\n管理者は、新しいGitLab Pagesサイトの一意のドメインに関するデフォルト動作を設定できるようになりました。デフォルトでは、新しいPagesサイトは、サイト間のCookie共有を防ぐために一意のドメインURL（例：`my-project-1a2b3c.example.com`）を使用します。\n\nインスタンス向けのこの新しい設定により、新しいPagesサイトをデフォルトでパスベースのURL（例：`my-namespace.example.com/my-project`）を使用するように設定できます。これにより、組織はGitLab Pagesの動作を自社のワークフローやセキュリティ要件に合わせることができます。\n\nユーザーは個々のプロジェクトでこの設定を上書きでき、既存のPagesサイトは影響を受けません。\n\n[ドキュメント\n](https://docs.gitlab.com/administration/pages/#disable-unique-domains-by-default)[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/555559)\n\n### **OAuthアプリでSSO認証をサポート**\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nOAuthアプリケーションが組織のシングルサインオン要件とシームレスに統合できるようになりました。以前は、ユーザーは最初にGitLabで、次にSSOで認証するという2段階認証が必要で、不要な手間と複雑さが生じていました。\n\n現在、OAuthアプリケーションは、認証リクエストでパラメーターを指定し、必要に応じてSSO認証を自動的に開始できます。これにより以下が提供されます：\n\n* ユーザー向けの統一された認証体験\n* 組織のSSOポリシーへの自動準拠\n* すべてのGitLab統合全体で一貫したセキュリティ\n* パラメーター追加だけのデベロッパー向けの簡単な実装\n\nOAuth統合は、セキュリティを維持しながら煩雑な認証ワークフローを排除し、SSOポリシーを自動的に適用するようになりました。\n\n[ドキュメント\n](https://docs.gitlab.com/api/oauth2/#authorization-code-flow)[イシュー\n](https://gitlab.com/gitlab-org/gitlab/-/issues/461212)[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/326288)\n\n### **GitLab Runner 18.3**\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLab Runner 18.3も本日リリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドエージェントです。GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。\n\nバグ修正：\n\n* [GitLab 18.2.0では、Runnerはサブディレクトリファイルをキャッシュキーとして使用してジョブキャッシュをプルできません](https://gitlab.com/gitlab-org/gitlab/-/issues/556464)\n* [Docker executorがジョブの開始に断続的に失敗し、ユーザー名またはパスワードが正しくないというエラーメッセージを返す](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38707)\n* [`none`と`empty`のGit戦略間での`*_get_sources`フックの使用における不整合](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38703)\n* [非OLMマニフェストでデプロイされたOperatorが間違ったデフォルトイメージを想定する](https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/228)\n* [CRに`app.kubernetes.io/instance`ラベルがある場合、Operatorが間違った名前でConfigMapを作成する](https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/183)\n* [OpenShift 4.9でOperator 1.10.0が`gitlab-runner`ネームスペースでランナーConfigMapの作成とポッドの起動に失敗する](https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/138)\n\n新機能：\n\n* [GitLab Runner Operatorがランナーマネージャーポッドアノテーションをサポートするようになりました](https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/245)\n* [GitLab Runner OperatorがOpenShift 4.19をサポートするようになりました](https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/253)\n\nすべての変更の一覧は、GitLab Runnerの[CHANGELOG](https://gitlab.com/gitlab-org/gitlab-runner/blob/18-3-stable/CHANGELOG.md)で確認できます。\n\n[ドキュメント](https://docs.gitlab.com/runner)\n\n### **GitLab管理のOpenTofuおよびTerraform状態用の新しいCLIコマンド**\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLab CLI（`glab`）に、GitLab管理の`OpenTofu`および`Terraform`状態を支援するための新しいトップレベルコマンド`opentofu`が含まれるようになりました。`opentofu`コマンドは、`terraform`およびtfコマンドのエイリアスとしても使用できます。\n\n以下のコマンドが追加されました：\n\n* `glab opentofu init`：状態バックエンドをローカルで初期化します\n* `glab opentofu state list`：プロジェクト内のすべての状態を一覧表示します\n* `glab opentofu state download`：最新の状態または特定のバージョンをダウンロードします\n* `glab opentofu state delete`：状態全体または特定のバージョンを削除します\n* `glab opentofu state lock`：状態をロックします\n* `glab opentofu state unlock`：状態のロックを解除します\n\n`opentofu`コマンドで状態を管理するには、`glab` 1.66以降が必要です。\n\n[ドキュメント](https://docs.gitlab.com/user/infrastructure/iac/terraform_state)\\\n[イシュー](https://gitlab.com/gitlab-org/cli/-/issues/7954)\n\n### **依存関係スキャンアナライザーのファイル場所情報の改善**\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\n依存関係をそのソースまで追跡できることは、特に脆弱性の修正にとって重要です。以前は、依存関係スキャンアナライザーが期限切れで削除されるジョブアーティファクトにリンクすることがあり、依存関係のソースまで追跡することが困難でした。本リリースで、依存関係スキャンアナライザーが、依存関係を導入したプロジェクトファイルにリンクできるようになりました。このオプションを有効にすると、依存関係リストと脆弱性レポートのリンクが確実に利用可能になります。ユーザーは、依存関係スキャンジョブで`DS_FF_LINK_COMPONENTS_TO_GIT_FILES=true`を設定することで、この機能を有効にできます。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/dependency_scanning/dependency_scanning_sbom/#customizing-behavior-with-the-cicd-template)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/537716)\n\n### **API経由でパイプライン実行ポリシーにCI/CD設定へのアクセスを付与**\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nプロジェクトREST APIを使用して、新しい`spp_repository_pipeline_access`フィールドでセキュリティポリシープロジェクトの**パイプライン実行ポリシー**設定をプログラムで有効または無効にできるようになりました。以前は、この設定はGitLab UIでのみ管理できました。この機能強化により、次のことができるようになりました：\n\n* 現在の**パイプライン実行ポリシー**ステータスを`GET`する。\n* 設定をプログラムで有効または無効にするために`PUT`する。\n\nこの改善により、大規模でセキュリティポリシーを管理するチームにとって、より優れた自動化と統合ワークフローが実現されます。\n\n[ドキュメント](https://docs.gitlab.com/api/projects/#edit-a-project)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/524124)\n\n### **スキャン実行ポリシーテンプレート**\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nスキャン実行ポリシーテンプレートは、一般的なユースケースに基づいてスキャン実行ポリシーを素早く作成するのに役立ちます。以下の3つのテンプレートから選択できます：\n\n* マージリクエストセキュリティ\n* スケジュールされたスキャン\n* リリースセキュリティ\n\nテンプレートを選択したら、そのテンプレートで有効にするGitLabセキュリティスキャンを選択して、すぐに開始します。より高度なユースケースがある場合は、カスタム設定に切り替えて、特定のブランチパターン、パイプラインソースなどでポリシーを拡張できます。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/policies/scan_execution_policies/#scan-execution-policy-editor)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/11919)\n\n![スキャン実行ポリシーテンプレート](https://about.gitlab.com/images/18_3/scan-execution-policy-templates.png)\n\n### **承認ポリシーのサービスアカウントとアクセストークンの例外**\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\n新しい**サービスアカウントとアクセストークンの例外**機能により、必要に応じてマージリクエスト承認ポリシーをバイパスできる特定のサービスアカウントとアクセストークンを指定できるようになりました。これにより、セキュリティコントロールを維持しながら、既知の自動化の摩擦を解消します。\n\n**主要な機能：**\n\n* 自動化ワークフローサポート：CI/CDパイプライン、プルミラーリング、自動バージョン更新のために承認要件をバイパスするように、特定のサービスアカウント、ボットユーザー、グループアクセストークン、プロジェクトアクセストークンを設定します。サービスアカウントは、人間のユーザーに対する制限を維持しながら、承認されたトークンを使用して保護されたブランチに直接プッシュできます。\n* 緊急アクセスと監査：重要なインシデントのブレークグラスシナリオを有効にし、包括的な監査証跡を提供します。すべてのバイパスイベントは、コンテキストと理由を含む詳細な監査ログを生成し、停止中またはセキュリティ修正時の迅速な対応を可能にしながら、コンプライアンス要件をサポートします。\n* GitOps統合：リポジトリミラーリング、外部CIシステム（Jenkins、CloudBees）、自動変更ログ生成、GitFlowリリースプロセスなど、一般的な自動化の課題を解決します。サービスアカウントは、特定のプロジェクトとブランチにスコープされたトークンベースのアクセスで必要最小限の権限を受け取ります。\n\nこの機能強化により、ガバナンスコントロールを維持しながら、現代のDevOps自動化のニーズに対して厳格なセキュリティポリシーの適用が維持され、カスタムの回避策が不要になります。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#access-token-and-service-account-exceptions)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/18112)\n\n![承認ポリシーのサービスアカウントとアクセストークンの例外](https://about.gitlab.com/images/18_3/access-token-exception-policies.png)\n\n### **エンタープライズユーザーの機能強化**\n\n> SaaS: Premium、Ultimate\n\nGitLab 18.3では、ユーザープライバシーとライフサイクル管理に対する組織の制御を強化するエンタープライズユーザー機能強化が導入されます。\n\nグループオーナーは、ユーザーAPIを使用してネームスペース内のエンタープライズユーザーを削除できるようになりました。この破壊的なアクションは、ユーザーの貢献のリンクを解除し、それらをシステム全体のGhostユーザーに関連付けます。これらのオプションは、自動SCIMインポートで誤って作成されたユーザーをクリーンアップする場合や、ユーザー名とメールを再利用する必要があるフェデレーション環境を管理したりする場合に特に有用です。\n\nさらに、組織はエンタープライズユーザーのメールをユーザープロファイルで非表示にできるようになり、すべてのエンタープライズユーザーに対してより広範なメールプライバシーの実施を提供します。\n\n[ドキュメント](https://docs.gitlab.com/user/enterprise_user/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/9262)\n\n### **強化された管理エリアプロジェクトリスト**\n\n> Self-Managed: Free、Premium、Ultimate\n\nより一貫した体験をGitLab管理者に提供するために、**管理者エリア**プロジェクトリストをアップグレードしました：\n\n* 削除保護の遅延：プロジェクトの削除は、GitLab全体で使用されているのと同じ安全な削除フローに従うようになり、偶発的なデータ損失を防ぎます。\n* より高速なインタラクション：ページのリロードなしでプロジェクトのフィルター、並べ替え、ページ分割が可能になり、より応答性の高い体験を提供します。\n* 一貫したインターフェース：プロジェクトリストは、GitLab全体の他のプロジェクトリストの外観と動作に統一されました。\n\nこのアップデートにより、管理者の体験がGitLabデザイン標準に沿ったものになり、データを保護するための重要な安全機能が追加されます。プロジェクト管理の今後の機能強化は、プラットフォーム全体のすべてのプロジェクトリストに自動的に反映されます。\n\n[ドキュメント](https://docs.gitlab.com/administration/admin_area/#administering-projects)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/17782)\n\n## **実験的機能**\n\n### **GitLabモデルコンテキストプロトコルサーバー**\n\nGitLabモデルコンテキストプロトコル（MCP）サーバーにより、AIアプリケーションがGitLabインスタンスに安全に接続できるようになります。MCPサーバーを設定すると、Claude Desktop、Cursor、その他のMCP対応アプリケーションなどのAIアシスタントが、GitLabデータにアクセスし、ユーザーに代わってアクションを実行できます。このリリースには、計画イシュー、マージリクエスト、CIパイプラインジョブと連携するツールが含まれており、今後のマイルストーンでサポートツールを拡張していく予定です。\n\nMCPサーバーは、AIツールに対して標準化された方法を提供します：\n\n* GitLabプロジェクト情報にアクセスする\n* イシューとマージリクエストデータを取得する\n* GitLab APIと安全に連携する\n* AIアシスタントを通じてGitLab固有の操作を実行する\n\nGitLabのMCPサーバーはリモートで実行されるため、ローカルにインストールまたは実行する必要はありません。アップデートは自動的に適用されます。\n\n実験的機能を有効にする方法を含む詳細については、[GitLab MCPサーバーのドキュメント](https://docs.gitlab.com/user/gitlab_duo/model_context_protocol/mcp_server)をご覧ください。\n\n### **GitLab Duo CLIエージェント（ベータ版）**\n\nGitLab Duo CLIエージェントを素早く作成し、Claude Code、OpenAI Codex、Amazon Q、Google Gemini CLI、OpenCode AIコーディングアシスタントと統合できるようになりました。このベータ機能は、すべてのGitLab Duo Enterpriseのお客様が利用でき、選択したプロバイダー用に独自のAPIキー（BYOK）を持ち込む必要があります。\n\nイシュー、エピック、またはマージリクエストで、作成したサービスアカウントユーザーをタグ付けすることで、CLIエージェントにタスクの完了を依頼できます。タグ付けされると、そのエージェントに接続された統合コーディングアシスタントがトリガーされ、自動CI/CDパイプラインが実行され、タスクが完了します。マージ可能な変更またはインラインコメントとして応答を受け取ります。\n\nこの仕組みによりブランチ保護と承認ルールを尊重しながら、セキュリティ、コスト管理、インフラストラクチャガバナンスに関する組織のニーズを満たしつつ、CLIエージェントの力をGitLabに直接もたらします。今後のイテレーションでは、GitLab管理のAPIキーを使用してCLIエージェントをコーディングアシスタントとネイティブに統合できるようになります。\n\nGitLab Duo CLIエージェントの使用に関するフィードバックは、[イシュー557820](https://gitlab.com/gitlab-org/gitlab/-/issues/557820)をご覧ください。\n\n## バグ修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。\n\n18.3で提供されたすべてのバグ修正、パフォーマンスの強化、UI改善を確認するには、以下のリンクをクリックしてください。\n\n* [バグ修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=18.3)\n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=18.3)\n* [UIの改善](https://papercuts.gitlab.com/?milestone=18.3)\n\n## 非推奨事項\n\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。[](\u003C>)\n\n## 削除された機能と破壊的な変更\n\n削除されたすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n* [cert-manager Helmチャートのアップデート](https://docs.gitlab.com/ee/update/deprecations.html#cert-manager-helm-chart-update)[](\u003C>)[](\u003C>)\n\n### 変更履歴\n\n変更内容をすべて表示するには、次のページから変更履歴を確認してください。\n\n* [](\u003C>)[GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)\n* [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)\n* [VS CodeのGitLab Workflow](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)\n* [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n### インストール\n\nGitLabを新規にインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/ja-jp/install/)をご覧ください。\n\n### 更新事項\n\n[更新ページ](https://about.gitlab.com/ja-jp/update/)をご覧ください。\n\n### ご不明な点がある場合\n\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスして質問を投稿してください。\n\n### GitLabサブスクリプションプラン\n\n* [Free](https://about.gitlab.com/pricing/)\n  ユーザー向けの永久無料機能を提供\n* [Premium](https://about.gitlab.com/pricing/premium/)\n  チームの生産性と調整を強化\n* [Ultimate](https://about.gitlab.com/pricing/ultimate/)\n  組織全体のセキュリティ、コンプライアンス、プランニングに対応\n\nGitLabのすべての機能を[無料](https://about.gitlab.com/free-trial/?hosted=saas)でお試しいただけます。\n\n*監修：ソリス ジェレズ / Jerez Solis [@jerezs](https://gitlab.com/jerezs)\n（GitLab合同会社 ソリューションアーキテクト本部 ソリューションアーキテクト）*\n\n### 過去の日本語リリース情報\n* [GitLab 18.4](https://about.gitlab.com/ja-jp/blog/gitlab-18-04-release)\n* [GitLab 18.3](https://about.gitlab.com/ja-jp/blog/gitlab-18-03-release)\n* [](\u003C>)[GitLab 18.2](https://about.gitlab.com/ja-jp/blog/gitlab-18-02-release)\n* [GitLab 18.1](https://about.gitlab.com/ja-jp/blog/gitlab-18-01-release)\n* [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n* [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n* [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n* [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)\n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)\n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)\n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)\n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)\n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)[](\u003C>)",[676],"2025-08-25","2025-08-22",[671,672,14,110],"GitLab 18.3でリリースした最新機能を公開します。",{"featured":92,"template":679,"slug":701},"gitlab-18-03-release","content:ja-jp:blog:gitlab-18-03-release.yml","Gitlab 18 03 Release","ja-jp/blog/gitlab-18-03-release.yml","ja-jp/blog/gitlab-18-03-release",{"_path":707,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":708,"content":713,"config":720,"_id":722,"_type":16,"title":723,"_source":18,"_file":724,"_stem":725,"_extension":21},"/ja-jp/blog/gitlab-18-02-release",{"noIndex":6,"ogImage":709,"title":710,"description":711,"config":712},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1752817693/gr3miapxfam57ksgivgi.png","GitLab 18.2 リリース","GitLab 18.2でリリースした最新機能をご紹介します。",{"noIndex":92},{"heroImage":709,"body":714,"authors":715,"updatedDate":716,"date":717,"title":710,"tags":718,"description":719,"category":14},"本ブログは、[GitLab 18.2 Release](https://about.gitlab.com/releases/2025/07/17/gitlab-18-2-released/)の抄訳です。内容に相違がある場合は、原文が優先されます。\n\n## IDE向けGitLab Duoエージェントプラットフォーム（ベータ版）とイシュー・タスク用カスタムワークフローステータスを追加したGitLab 18.2をリリース\n\nこのたび、GitLab 18.2のリリースを発表しました。このリリースでは、IDE向けGitLab Duoエージェントプラットフォーム（ベータ版）、イシュー・タスク用カスタムワークフローステータス、新しくなったマージリクエストのホーム画面、セキュリティを強化する不変コンテナタグなど、さまざまな機能が追加されました。\n\nこれらの機能は、今回のリリースに含まれる30以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLab 18.2には、GitLabコミュニティのユーザーから152件ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースもユーザーのみなさまの協力なしには実現しませんでした。\n\n来月のリリースで予定されている内容を先取りするには、[今後のリリースページ](https://about.gitlab.com/upcoming-releases/)をご覧ください。\n\n[GitLab 18.2のリリースでは、IDE](http://twitter.com/share?text=GitLab+18.2%E3%81%AE%E3%83%AA%E3%83%AA%E3%83%BC%E3%82%B9%E3%81%A7%E3%81%AF%E3%80%81IDE%E5%90%91%E3%81%91GitLab+Duo%E3%82%A8%E3%83%BC%E3%82%B8%E3%82%A7%E3%83%B3%E3%83%88%E3%83%97%E3%83%A9%E3%83%83%E3%83%88%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%EF%BC%88%E3%83%99%E3%83%BC%E3%82%BF%E7%89%88%EF%BC%89%E3%81%A8%E3%80%81%E3%82%A4%E3%82%B7%E3%83%A5%E3%83%BC%E3%83%BB%E3%82%BF%E3%82%B9%E3%82%AF%E7%94%A8%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF%E3%83%95%E3%83%AD%E3%83%BC%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%81%8C%E8%BF%BD%E5%8A%A0%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82&url=https://about.gitlab.com/ja-jp/blog/gitlab-18-1-release/&hashtags=)[向けGitLab Duoエージェントプラットフォーム（ベータ版）と、イシュー・タスク用カスタムワークフローステータスが追加されました。クリックしてSNSで共有しましょう！](http://twitter.com/share?text=GitLab+18.2%E3%81%AE%E3%83%AA%E3%83%AA%E3%83%BC%E3%82%B9%E3%81%A7%E3%81%AF%E3%80%81IDE%E5%90%91%E3%81%91GitLab+Duo%E3%82%A8%E3%83%BC%E3%82%B8%E3%82%A7%E3%83%B3%E3%83%88%E3%83%97%E3%83%A9%E3%83%83%E3%83%88%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%EF%BC%88%E3%83%99%E3%83%BC%E3%82%BF%E7%89%88%EF%BC%89%E3%81%A8%E3%80%81%E3%82%A4%E3%82%B7%E3%83%A5%E3%83%BC%E3%83%BB%E3%82%BF%E3%82%B9%E3%82%AF%E7%94%A8%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF%E3%83%95%E3%83%AD%E3%83%BC%E3%82%B9%E3%83%86%E3%83%BC%E3%82%BF%E3%82%B9%E3%81%8C%E8%BF%BD%E5%8A%A0%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82&url=https://about.gitlab.com/ja-jp/blog/gitlab-18-1-release/&hashtags=)\n\n## 今月の[注目コントリビューター](https://contributors.gitlab.com/docs/notable-contributors)は[](https://gitlab.com/karras)[](https://gitlab.com/chaitanyason9)[Markus Siebert](https://gitlab.com/m-s-db)さんです\n\n\u003Cimg src=\"https://about.gitlab.com/images/notable-contributor-logo.svg\">\n\nDB Systel GmbHのプラットフォームエンジニアであるMarkus Siebertさんは、GitLab CI/CDにネイティブなAWS Secrets Managerサポートを導入するコミュニティの取り組みを主導しています。これは、パイプラインでの安全なシークレット管理という重要なエンタープライズニーズに応えるものです。わずか6週間で172件もの活動を記録し、「[AWS Secrets Managerからのシークレット取得機能の追加](https://gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/5587)」「[AWS SSM ParameterStore用GitLab CI設定エントリの追加](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/191803)」「[AWS Secrets Managerのドキュメント作成](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/192378)」など、複数のマージリクエストを通じてAWS Secrets ManagerとAWS Systems Manager Parameter Storeの両方のサポート実装に精力的に取り組んでいます。\n\nMarkusさんを推薦したGitLabの[Aditya Tiwari](https://gitlab.com/atiwari71)（Secureチームのシニアバックエンドエンジニア）は次のように述べています。「Markusさんの取り組みにより、AWS環境を利用する GitLabユーザーは、サードパーティツールやカスタムスクリプトに頼ることなく、CI/CDシークレットを安全に管理できるようになりました。これは、AWSサービスを標準化しているエンタープライズユーザーにとって特に価値のある機能です。」\n\n初期実装からドキュメント作成まで、この機能を完成させようとするMarkusさんの献身的な姿勢、そしてフィードバックに基づいてマージリクエストを継続的に改善する取り組みは、コミュニティコントリビューションの理想的な例です。また、AWS ユーザーのためにGitLabをより良いものにするコミュニティ主導開発の力を示しています。\n\nこのコントリビュートはGitLab共同開発プログラムを通じて実現されました。\n\nこの場を借りて、GitLabにコントリビュートしてくれたMarkusさんに感謝します！\n\n## GitLab 18.2でリリースされた主な改善点\n\n### IDEでGitLab Duoエージェントプラットフォームが利用可能に（ベータ版）\n\n> SaaS: Premium、Ultimate、Duo Core、Duo Pro、Duo Enterprise\\\n> Self-Managed: Premium、Ultimate、Duo Core、Duo Pro、Duo Enterprise\n\nGitLab Duoエージェントプラットフォームを使用して、VS CodeとJetBrains IDEでAgentic Chatとエージェントフローを直接利用できるようになりました。コードベースやGitLabプロジェクトと自然な会話形式でやりとりできます。\n\nAgentic Chatは、ファイルの作成・編集、パターンマッチングやgrepを使用したコードベース全体の検索、コードに関する質問への即座の回答など、素早く会話的なタスクに対応しています。\n\nAgent Flowは、より大規模な実装や包括的な計画を担当し、概念からアーキテクチャまでの高レベルなアイデアを実現しながら、イシュー、マージリクエスト、コミット、CI/CDパイプライン、セキュリティ脆弱性などのGitLabリソースにアクセスします。\n\nどちらの機能も、ドキュメント、コードパターン、プロジェクト探索のための高度な検索機能を備えており、簡単な編集から複雑なプロジェクト分析まで、様々なタスクの実行をサポートします。\n\nこのプラットフォームは、Model Context Protocol（MCP）にも対応しており、外部のデータソースやツールへの接続が可能で、AI機能がGitLab上の情報だけでなく外部のコンテキストも活用できます。\n\n利用を開始するには、[GitLab Duoエージェントプラットフォームに関するドキュメント](https://docs.gitlab.com/user/duo_agent_platform/)、[VS Codeセットアップガイド](https://docs.gitlab.com/user/gitlab_duo_chat/agentic_chat/#use-agentic-chat-in-vs-code)、[JetBrainsセットアップガイド](https://docs.gitlab.com/user/gitlab_duo_chat/agentic_chat/#use-agentic-chat-in-jetbrains-ides)をご覧ください。\n\n[ドキュメント](https://docs.gitlab.com/user/duo_agent_platform/)\\\n[イシュー](https://gitlab.com/gitlab-org/editor-extensions/gitlab-lsp/-/issues/1217)\n\n[](https://gitlab.com/groups/gitlab-org/-/epics/14137)\u003C!-- blank line -->\n\n\u003Cfigure class=\"video_container\">\n\u003Ciframe src=\"https://www.youtube.com/embed/GPewPbqlFDE?si=C7LVy7tWpRGyZT7b\" frameborder=\"0\" allowfullscreen=\"true\"> \u003C/iframe>\n\u003C/figure>\n\u003C!-- blank line -->\n\n### イシュー・タスク用カスタムワークフローステータス\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nステータス設定が柔軟になったことで、これまでの「オープン／クローズ」だけの単純な管理方法に代わり、チームの実際のワークフローステージに沿って作業アイテムを追跡できるようになりました。\n\nチームのプロセスを正確に反映したカスタムステータスを定義できるようになったことで、ラベルに頼る必要がなくなりました。ステータスを自由に設定することで、次のことが可能になります。\n\n* **カスタムワークフローの定義**：チームの実際のプロセスに合わせたワークフローを作成\n* **ワークフローラベルの置き換え**：ワークフローラベルを検索、更新、レポートしやすい適切なステータスに変更\n* **完了結果の明確化**：「完了」または「キャンセル」を使用して、単にイシューをクローズするだけでなく、完了の結果を明確に表示\n* **正確なフィルタリングとレポート**：作業アイテムのステータスを正確に絞り込んでレポートし、プロジェクトの状況をより的確に把握\n* **イシューボードでのステータス利用**：イシューが列間を移動した際にステータスを自動更新\n* **ステータスの一括更新**：複数の作業アイテムのステータスを一括更新して効率的に管理\n* **依存関係の追跡**： リンクされた作業アイテムのステータスを可視化\n\nカスタムワークフローステータスは、**コメントでのクイックアクション**にも対応し、GitLabのオープン／クローズシステムと自動で同期します。\n\n本機能の改善に向けたご意見やご提案を、ぜひ[フィードバックイシュー](https://gitlab.com/gitlab-com/www-gitlab-com/-/issues/35235)よりお寄せください。\n\n[](\u003C>)\u003C!-- blank line -->\n\n\u003Cfigure class=\"video_container\">\n\u003Ciframe src=\"https://www.youtube.com/embed/oxN95MSo6UU?si=iYGB7gF9LSsRULhk\" frameborder=\"0\" allowfullscreen=\"true\"> \u003C/iframe>\n\u003C/figure>\n\u003C!-- blank line -->\n\n### 新しくなったマージリクエストのホーム画面\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\n複数のプロジェクトで、作成者とレビュアーの両方の立場で多数のマージリクエストを同時に対応していると、コードレビューの管理は非常に大変になります。\n\nマージリクエストのホーム画面が新しくなりました。早急に対応が必要な作業がわかるようスマートに優先順位を付け、以下の2つの表示モードを使用してレビュー作業の進め方を示してくれます。\n\n* **ワークフロービュー**：マージリクエストをレビューのステータスごとに整理し、コードレビューの各ステージに応じて作業をグループ化\n* **ロールビュー**：自分が作成者かレビュアーかによってマージリクエストをグループ化し、担当作業の範囲を明確に分離\n\n**有効**タブには対応が必要なマージリクエストが表示され、**マージ済み**タブには最近完了した作業が表示されます。また、**検索**では包括的なフィルタ機能を使用できます。\n\nまた、新しいホーム画面では、自分が作成したマージリクエストと割り当てられたマージリクエストの両方がまとめて表示されるため、可視性がさらに向上し、担当作業の見落としを防ぐことができます。\n\n[ドキュメント](https://docs.gitlab.com/user/project/merge_requests/homepage/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13448)\n\n![新しくなったマージリクエストのホーム画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752817030/ehswaenxkydlwbox0ip3.png)\n\n### 不変コンテナタグでセキュリティを強化\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nコンテナレジストリは、現代のDevSecOpsチームにとって重要なインフラストラクチャです。しかし、保護されたコンテナタグがあっても、組織には依然として課題があります。それは、タグが作成された後でも、十分な権限を持つユーザーであれば変更できてしまうという点です。これは、本番環境の安定性を特定のタグ付きコンテナイメージに依存しているチームにとってリスクとなります。権限を持つユーザーによる変更であっても、意図しない変更が発生したり、デプロイの整合性が損なわれたりする可能性があります。\n\n不変コンテナタグを使用することで、コンテナイメージを意図しない変更から保護できます。不変ルールに一致するタグが作成されると、そのコンテナイメージは誰にも変更できなくなります。今後は以下のことが可能になります。\n\n* 保護ルールおよび不変ルールを合わせて、1プロジェクトあたり最大5件までの保護ルールをRE2正規表現パターンを用いて作成する\n* latest、セマンティックバージョン（例：v1.0.0）、リリース候補といった重要なタグをあらゆる変更から保護する\n* 不変タグがクリーンアップポリシーの対象から自動的に除外されるようにする\n\n不変コンテナタグを使用するには、次世代コンテナレジストリが必要です。このレジストリは、GitLab.comではデフォルトで有効になっています。GitLab Self-Managedインスタンスで不変コンテナタグを使用するには、[メタデータデータベース](https://docs.gitlab.com/administration/packages/container_registry_metadata_database/)を有効にする必要があります。\n\n[ドキュメント](https://docs.gitlab.com/user/packages/container_registry/immutable_container_tags/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15139)[](https://gitlab.com/groups/gitlab-org/-/epics/15139)\n\n![不変コンテナタグでセキュリティを強化](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752817030/xfcqsdjotx4acx96nu5b.png)\n\n### PremiumおよびUltimateにおけるGitLab Duoの機能をグループ・プロジェクト単位で制御\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nGitLab PremiumおよびUltimateユーザーは、グループとプロジェクトでIDE内のコード提案とGitLab Duo Chatの利用可否を変更できるようになりました。以前は、インスタンスまたはトップレベルグループでのみ利用可否を変更できました。\n\n[ドキュメント](https://docs.gitlab.com/user/gitlab_duo/turn_on_off/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/551895)\n\n![PremiumおよびUltimateにおけるGitLab Duoの機能をグループ・プロジェクト単位で制御](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752817030/khiyfhuutomokxjkgsul.png)\n\n### 新しいグループ概要コンプライアンスダッシュボード\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nコンプライアンスセンターは、コンプライアンスチームがコンプライアンスステータスのレポート、違反レポート、コンプライアンスフレームワークの管理などを一括して行える場所です。\n\n新たに導入されたグループ概要コンプライアンスダッシュボードは、グループ内のすべてのプロジェクトに関するコンプライアンス情報を集約してコンプライアンスマネージャーに提供します。この最初のイテレーションでは、以下の情報が表示されます。\n\n* 特定のコンプライアンスフレームワークの対象となっているプロジェクトの割合\n* グループ内すべてのプロジェクトで失敗した要求事項の割合\n* グループ内すべてのプロジェクトで失敗した制御の割合\n* 「注意」が必要な特定のフレームワーク\n\nこの新しいグループ概要により、コンプライアンスマネージャーは、コンプライアンス対応状況の明確な全体像を一元的な画面で把握できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/compliance/compliance_center/compliance_overview_dashboard/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13909)\n\n![新しいグループ概要コンプライアンスダッシュボード](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752817030/rttcgovqszvnwqgqw1z5.png)\n\n### インスタンス全体で利用可能なワークスペースKubernetesエージェント\n\n> Self-Managed: Premium、Ultimate\n\nGitLab管理者は、インスタンスレベルでワークスペースKubernetesエージェントをマッピングできるようになりました。これにより、ユーザーはそのインスタンスに含まれるどのグループやプロジェクトからでも、ワークスペースを作成できるようになりました。\n\n組織はワークスペースKubernetesエージェントを一度プロビジョニングするだけで、インスタンス全体の現在および将来のすべてのプロジェクトからそのエージェントにアクセスできるようになり、ワークスペースのスケーラビリティが大幅に向上します。\n\n[ドキュメント](https://docs.gitlab.com/user/workspace/gitlab_agent_configuration/#allow-a-cluster-agent-for-workspaces-on-the-instance)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16485)\n\n![インスタンス全体で利用可能なワークスペースKubernetesエージェント](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752817031/if68jfrt7op0tqnsb2co.png)\n\n### セキュリティレポートのPDFエクスポートがダウンロード可能に\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\n脆弱性管理の状況や進捗を他の関係者と共有するために、各プロジェクトまたはグループのセキュリティダッシュボードをPDFドキュメントとしてエクスポートできるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/security_dashboard/#exporting)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16989)\n\n![セキュリティレポートのPDFエクスポートがダウンロード可能に](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752817035/xsuirbb1qrpnkamx9a9o.png)\n\n### 一元的なセキュリティポリシー管理（ベータ版）\n\n> Self-Managed: Ultimate\n\nコンプライアンスが重要となる大規模な組織では、複数のプロジェクトやグループにポリシーが分散していることが多く、チームはその断片化されたポリシーの管理に苦労することがあります。ポリシーが一元的に可視化されていない状態では、ポリシーを一貫して適用するのに時間がかかり、コンプライアンスリスクの増大にもつながります。\n\n一元的なセキュリティポリシー管理は、GitLab組織全体にわたってセキュリティポリシーを作成、管理、適用するための統一されたアプローチを導入するものであり、指定された単一のコンプライアンスおよびセキュリティポリシー（CSP）グループを通じて実現されます。これにより、セキュリティチームは以下のことを行えるようになります。\n\n* **一度の定義でポリシーを全体に適用**：CSPグループを通じてインスタンス全体に適用されるセキュリティポリシーを一度作成し、すべてのグループとプロジェクトに対して自動的に適用\n* **事業部単位のポリシーを設定**：トップレベルグループは、CSPグループから組織全体のポリシーを継承しつつ、独自のポリシーセットを設定可能\n* **最小権限の原則を遵守**：インスタンス全体に適用される中央ポリシー管理レイヤーを確立\n\nこのベータ版リリースでは、一元的なポリシー管理のための基盤となるフレームワークを確立し、グループ、プロジェクト、またはインスタンス単位で設定可能なすべての既存のセキュリティポリシータイプに対応しています。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/policies/centralized_security_policy_management/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/17392)\n\n![一元的なセキュリティポリシー管理（ベータ版）](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752817030/jombwhyuvqsif4k7kjvn.png)\n\n## GitLab 18.2リリースに含まれるその他の改善点\n\n### 管理者がユーザーの確認なしでコントリビュートを再アサイン可能に\n\n> Self-Managed: Free、Premium、Ultimate\n\n管理者は、プレースホルダユーザーからアクティブユーザーへのコントリビュートの再アサインを、ユーザーの確認なしで実行できるようになりました。この機能は、再アサインの承認メールをユーザーが確認しないことでプロセスが停滞してしまうという、大規模組織が抱える重要な課題を解決します。\n\nユーザーの代理操作が有効になっているGitLabインスタンスでは、管理者はユーザー管理のワークフローを効率化しつつ、データの整合性を維持することができます。再アサイン完了後には、ユーザーに通知メールが送信されるため、プロセス全体における透明性も確保されます。\n\n[ドキュメント](https://docs.gitlab.com/administration/settings/import_and_export_settings/#skip-confirmation-when-reassigning-placeholder-users)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/523259)\n\n### チームメンバーにエピックを割り当て\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\n個人へのエピックの割り当てが可能になり、戦略的イニシアチブの責任者が明確になりました。エピックに担当者を設定することで、ポートフォリオレベルで誰が責任を持つかが明確になり、迅速な意思決定と長期目標への明確な責任体制を構築できます。チームは、エピックの進捗状況、依存関係、スコープの変更について、誰に連絡すればよいかをすぐに把握できます。\n\n[ドキュメント](https://docs.gitlab.com/user/group/epics/manage_epics/#assignees)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/4231) \n\n![チームメンバーにエピックを割り当て](https://about.gitlab.com/images/18_2/epic_assignees.png)\n\n### エピックの表示設定\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\n作業アイテムの一覧を表示する際に、どのメタデータを表示するかを自由に選べるようになり、最も重要な情報に集中しやすくなりました。\n\nこれまでは、すべてのメタデータフィールドが常に表示されていたため、作業アイテムを確認する際に情報が多すぎて把握しにくい状況でした。今回の改善により、担当者、ラベル、日付、マイルストーンといった特定のフィールドのオン／オフを切り替えて、表示内容をカスタマイズできるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/group/epics/manage_epics/#configure-epic-display-preferences)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/393559) \n\n![エピックの表示設定](https://res.cloudinary.com/about-gitlab-com/image/upload/v1753246094/nyfmmdweksyndjdisfp4.png)\n\n### GLQLビューでの並べ替えとページネーション\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\n今回のリリースでは、GLQLビューの並べ替え機能とページネーション機能が強化され、大規模なデータセットでの作業がより簡単になりました。\n\n期限、ヘルスステータス、人気度などの主要なフィールドで並び替えできるようになり、最も関連性の高い項目をすばやく見つけられます。新しい「さらに読み込む」形式のページネーションシステムにより、ページ全体に表示されていた大量の結果が、必要な分だけを段階的に読み込めるようになり、データの管理がしやすくなりました。\n\nこうした改善により、チームは複雑なプロジェクトデータを効率的に扱い、その時々で最も重要な情報に集中できるようになります。\n\n[ドキュメント](https://docs.gitlab.com/user/glql/#presentation-syntax)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/502701)\n\n### GitLab Runner 18.2\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLab Runner 18.2も本日リリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドエージェントです。GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。\n\nバグ修正：\n\n* [GitLab Runner 18.1.0へのアップグレード後、FIPSモードでRunnerが失敗する](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38890)\n* [FF_USE_DUMB_INIT_WITH_KUBERNETES_EXECUTORでジョブポッドを起動できない](https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/241)\n* [GitLab Runner（FIPSモード）でubi-fipsイメージがデフォルトのイメージフレーバーとして使用されていない](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38273)\n* [GitLabメンテナンスモードを無効にした後、Runnerが長時間オフラインのままになる](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29181)\n\nすべての変更の一覧は、GitLab Runnerの[変更履歴で確認できます](https://gitlab.com/gitlab-org/gitlab-runner/blob/18-2-stable/CHANGELOG.md)。\n\n[ドキュメント](https://docs.gitlab.com/runner/)\n\n### コンテナスキャンにおけるマルチアーキテクチャコンテナイメージのサポート\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nコンテナスキャンにLinux Arm64コンテナイメージバリアントが追加されました。これにより、Linux Arm64ランナー上で実行する際にアナライザーがエミュレーションなしで動作するため、分析速度が向上します。さらに、`TRIVY_PLATFORM`環境変数にスキャンしたいプラットフォームを設定することで、マルチアーキテクチャイメージをスキャンできるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/container_scanning/#available-cicd-variables)\\\n[イシュー ](https://gitlab.com/gitlab-org/gitlab/-/issues/543144)\n\n### コンテナスキャンにおけるアーカイブファイルのサポート強化\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLab 18.2では、コンテナスキャンにおけるアーカイブファイルスキャンのサポートが強化されました。特定のパッケージに含まれる脆弱性が複数のイメージで検出された場合、スキャンされた各イメージに対して該当する脆弱性が表示されるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/container_scanning/#scanning-archive-formats)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/501077)\n\n### JavaScriptで静的到達可能性がサポートされるように\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nコンポジション解析で、JavaScriptライブラリの静的到達可能性がサポートされるようになりました。トリアージや修正に関する意思決定を行う上で、静的到達可能性機能によって生成されたデータを活用できます。また、静的な到達性データをEPSS、KEV、およびCVSS（共通脆弱性評価システム）のスコアと一緒に使用すれば、より焦点を絞って脆弱性を確認することも可能です。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/dependency_scanning/static_reachability/#supported-languages-and-package-managers)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/502334) \n\n### 脆弱性レポートにおける到達可能性フィルター\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\n脆弱性レポート内のデータを到達可能な脆弱性のみに絞り込めるようになりました。到達可能な脆弱性とは、次の両方の条件を満たす脆弱性を指します。\n\n* 共通脆弱性識別子（CVE）リストに掲載されている\n* 明示的にインポートされているライブラリに含まれている\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/vulnerability_report/#filtering-vulnerabilities)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/543346) \n\n![脆弱性レポートにおける到達可能性フィルター](https://about.gitlab.com/images/18_2/reachability_filter.png)\n\n### 承認ポリシーにおけるソースブランチパターンの例外設定\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nこれまで、GitFlowを使用するチームは、`release/*`ブランチを`main`にマージする際に、承認のデッドロックが頻繁に発生していました。これは、ほとんどのコントリビューターがリリース開発にすでに関与しており、承認者として機能できなくなるためです。\n\nマージリクエスト承認ポリシーのブランチパターン例外設定によって、この問題は解決されます。特定のソースブランチとターゲットブランチの組み合わせに対して、承認要件を自動的に回避できる仕組みです。たとえば、featureからmainへのマージには厳格な承認を設定しつつ、releaseからmainへのマージはスムーズに進められるように構成できます。\n\n主要機能：\n\n* **パターンベースの設定**：`release/*`や`hotfix/*`などのソースブランチパターンを定義し、承認要件を回避\n* **シームレスな統合**：ブランチの例外設定は既存のマージリクエスト承認ポリシーに直接統合され、UIまたは`policy.yaml`ファイルを通じて設定可能\n\nこれにより、複雑な回避策が不要になると同時に、標準的な開発ワークフローにおけるマージリクエスト承認ポリシーのセキュリティ上の利点は維持されます。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#source-branch-exceptions)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/18113) \n\n![承認ポリシーにおけるソースブランチパターンの例外設定](https://about.gitlab.com/images/18_2/source-branch-pattern.png)\n\n### 脆弱性レポートのCSVエクスポートに脆弱性IDを追加\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nこれまで、脆弱性レポートのCSVエクスポートに脆弱性IDは含まれていませんでしたが、CSVエクスポートに各脆弱性のIDが一覧表示されるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/vulnerability_report/#exporting)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/18033)\n\n### カスタム管理者ロール（ベータ版）\n\n> Self-Managed: Ultimate\n\nこの新しいカスタム管理者ロールでは、GitLab Self-ManagedおよびGitLab Dedicatedインスタンスの管理者エリアで権限を細かく調整できるようになります。管理者は、従来のようにすべてのアクセス権を付与するのではなく、必要とする特定の機能のみにアクセスできる専用のロールを作成できます。これにより、管理機能に対する最小権限の原則を組織内で実現し、過剰な権限によるセキュリティリスクを低減し、業務効率性を向上させることができます。\n\nこの機能に関するコミュニティのみなさまからのフィードバックを心よりお待ちしております。ご質問や実装経験の共有、改善点に関して当社チームへのご意見がある場合は、[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509376)をご確認ください。\n\n[ドキュメント](https://docs.gitlab.com/user/custom_roles/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15069) \n\n![カスタム管理者ロール（ベータ版）](https://about.gitlab.com/images/18_2/sscs_authz_custom_admin_role.png)\n\n### 監査ストリーミング先へのストリーミングの無効化\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nこれまで、監査ストリーミング先へのストリーミングを一時的に無効化する方法がありませんでした。たとえば、ストリーム接続のトラブルシューティングを行いたい場合や、設定の削除・再構成を行わずに変更を加えたい場合など、さまざまな理由で一時的に無効化したいケースが考えられます。\n\nGitLab 18.2では、監査ストリームを「有効」または「無効」に切り替える機能が追加されました。監査ストリームが無効になると、監査イベントは指定された送信先へストリーミングされなくなります。アクティブに切り替えると、監査イベントのストリーミングが再開されます。\n\n[ドキュメント](https://docs.gitlab.com/administration/compliance/audit_event_streaming/#activate-or-deactivate-streaming-destinations)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/537096) \n\n### すべての監査ストリーミング先でフィルタ機能が利用可能に\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nこれまでは、一部の監査ストリーミング先では、利用できるフィルタ機能に制限がありました。\n\n今回の改善により、すべての監査ストリーミング先で、UI上で以下のような項目を指定して絞り込めるようになりました。\n\n* 監査イベントタイプ別\n* グループまたはプロジェクト別\n\nまた、AWSやGCPなどの監査イベント先でも、監査イベントの絞り込みが可能になりました。\n\n[ドキュメント](https://docs.gitlab.com/user/compliance/audit_event_streaming/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/524939)\n\n### プレースホルダユーザーから非アクティブユーザーへの再アサイン\n\nSelf-Managed: Free、Premium、Ultimate\n\nこれまで、管理者はプレースホルダユーザーからアクティブユーザーに対してのみ、コントリビュートやメンバーシップを再アサインできました。\n\nGitLab Self-Managedでは、管理者によるプレースホルダユーザーから非アクティブユーザーへのコントリビュートやメンバーシップの再アサインも可能になりました。この機能により、ブロック済み、BAN済み、または無効化済みユーザーのコントリビュート履歴やメンバーシップ情報をGitLabインスタンス上で保持することができます。\n\n管理者は最初にこの設定を有効化する必要があります。有効化すると、安全なアクセス制御を維持しながら、再アサイン時のユーザー確認をスキップしてユーザー管理を効率化できます。\n\n[ドキュメント](https://docs.gitlab.com/administration/settings/import_and_export_settings/#skip-confirmation-when-administrators-reassign-placeholder-users)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/523260) \n\n### 長期計画の強化に向けたエピックへのマイルストーン割り当て\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\n[マイルストーン](https://docs.gitlab.com/user/project/milestones/)をエピックに直接割り当てることが可能になり、戦略的なイニシアティブから実行に至るまで、段階的な計画の流れを自然に作成できるようになりました。この機能強化により、四半期ごとの計画やSAFeプログラムインクリメント（PI）といった長期的な計画サイクルをエピックと連携させることができます。一方で、イテレーションは開発スプリントに特化させることができます。\n\nこの明確な階層構造により、管理上の負担を軽減し、戦略的なイニシアティブが組織のタイムフレームに沿ってどのように進捗しているかをより適切に把握できるようになります。\n\n[ドキュメント](https://docs.gitlab.com/user/project/milestones/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/329)\n\n[](https://gitlab.com/groups/gitlab-org/-/epics/329)\n\n![長期計画の強化に向けたエピックへのマイルストーン割り当て](https://about.gitlab.com/images/18_2/epic_milestone.png)\n\n### エピックページでエピックをドロワーまたは全ページで表示\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nエピック一覧ページに新たに追加されたトグルを切り替えて、エピックをドロワー表示で開くか、全ページ表示で開くかを選べるようになりました。\n\nドロワー表示を使えば、エピック一覧のコンテキストを保ったまま、エピックの詳細をすばやく確認できます。また、詳細な編集や包括的な操作を行うために、より広い画面スペースが必要な場合は、全ページ表示で開くことも可能です。\n\n[ドキュメント](https://docs.gitlab.com/user/group/epics/manage_epics/#open-epics-in-a-drawer)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/536620) \n\n![エピックページでエピックをドロワーまたは全ページで表示](https://about.gitlab.com/images/18_2/drawer_toggle.png)\n\n### GitLab Flavored Markdownにおける作業アイテム参照とエディターの改善\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLab Flavored Markdownで、`[work_item:123]`という統一構文を使用して、イシュー、エピック、作業アイテムを参照できるようになりました。この新しい構文は、イシュー用の`#123`やエピック用の`&123`といった既存の参照形式と併用でき、`[work_item:namespace/project/123]`のようなプロジェクト間参照にも対応しています。\n\nまた、プレーンテキストエディターには、Enterキーを押した際に[カーソルのインデントを維持する設定](https://docs.gitlab.com/user/profile/preferences/#maintain-cursor-indentation)が新たに追加されました。これにより、ネストされたリストやコードブロックなどの構造化されたコンテンツをより書きやすくなります。\n\n[ドキュメント](https://docs.gitlab.com/user/markdown/#gitlab-specific-references)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/7654)\n\n### トリガージョブでダウンストリームパイプラインステータスをミラーリング\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nこれまで、`strategy:depend`を使用したトリガージョブでは、手動ジョブ、ブロックされたパイプライン、実行中にステータスが変化する再試行パイプラインなど、複雑なパイプラインの状態に対応する際に制限がありました。そのため、実際には手動ジョブでブロックされているにもかかわらず、ダウンストリームパイプラインがアクティブに実行中であるかのように見えることがありました。\n\n新しい`strategy:mirror`キーワードは、ダウンストリームパイプラインの正確なリアルタイムのステータスをミラーリングすることで、より詳細なステータスレポートを可能にします。ステータスには、`running`、`manual`、`blocked`、`canceled`などの途中経過のステータスも含まれます。この機能により、チームは既存のワークフローを中断することなく、ダウンストリームパイプラインの現在のステータスを完全に把握できるようになります。\n\n[ドキュメント](https://docs.gitlab.com/ci/yaml/#triggerstrategy)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/431882) \n\n### 時間ベースのワンタイムパスワードMFAのDAST対応\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\n動的解析において時間ベースのワンタイムパスワード（TOTP）による多要素認証（MFA）がサポートされるようになりました。\n\nTOTP MFAが有効になっているプロジェクトでDASTスキャンを実行し、包括的なセキュリティテストを確実に行うことができます。この機能強化により、MFAが展開されている本番環境を再現した設定でアプリケーションをテストできるため、より正確なスキャン結果が得られます。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/dast/browser/configuration/authentication/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13633) \n\n### DASTログイン成功確認のサポート強化\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nこれまで、`DAST_AUTH_SUCCESS_IF_AT_URL`変数を使用して認証の成功を確認するには、URLの完全一致が必要でした。この方法は、ランディングページが静的なアプリケーションには有効でしたが、ログイン後のURLにログインごとの動的要素が含まれるアプリケーションでは困難でした。\n\n今回の改善により、`DAST_AUTH_SUCCESS_IF_AT_URL`変数でワイルドカードパターンを使用し、動的なURLパターンにも一致させることが可能になりました。この機能強化で柔軟性が向上されたことで、セッションごとにURLが変化する場合でも、認証の成功を確認できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/dast/browser/configuration/variables/#authentication)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/435942)\n\n### 依存関係パスの表示\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nこれまでは、ある依存関係が直接的な依存関係なのか、それとも依存関係の子孫を通じてインポートされた間接的な依存関係なのかを判別するのが困難でした。\n\n新たに追加された依存関係パス機能を使用することで、ライブラリが直接的にインポートされているのか、あるいは間接的にインポートされているのかを判別できるようになりました。依存関係パスは、プロジェクトおよびグループの依存関係リストと脆弱性詳細で確認できます。この機能により、ライブラリがどのようにインポートされているかに応じて、最も効率的な修正のパスをデベロッパーが判断できるようになります。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/dependency_list/#dependency-paths)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16815)\n\n[](https://gitlab.com/groups/gitlab-org/-/epics/16815)\n\n![依存関係パスの表示](https://about.gitlab.com/images/18_2/dependency_paths.png)\n\n### セキュリティインベントリによるアセットの包括的な可視化（ベータ版）\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nAppSecチームには、組織内のすべてのアセットに対するセキュリティ体制を包括的に可視化することが求められています。これまでのGitLabのセキュリティワークフローは、主にプロジェクトレベルでのスキャナー設定や脆弱性に焦点を当てていたため、カバレッジのギャップを把握したり、リスクに基づいて効率的に優先順位を付けたりするのが困難でした。\n\nセキュリティインベントリは、GitLabインスタンス全体におけるセキュリティ対策状況を一元的に表示し、AppSecチームが以下を実現できるようにします。\n\n* プロジェクトやグループ間のセキュリティカバレッジを完全に可視化する\n* セキュリティスキャンが十分に実行されていない、または設定にギャップがあるアセットを特定する\n* セキュリティ対策の重点をどこに置くのかについて、情報に基づいたリスクベースの意思決定を行う\n* セキュリティ対策状況の改善を継続的に追跡する\n\nこの機能を使用することで、個別プロジェクトのセキュリティと組織全体のセキュリティ戦略とのギャップを埋め、効果的なセキュリティプログラム管理に必要なアセットインベントリの基盤を構築できます。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/security_inventory/)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16484)\\\n\n### 脆弱性GraphQL APIで追加情報を取得可能に\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nGraphQL APIを使用して、脆弱性が導入されたパイプラインと最後に検出されたパイプラインを特定できるようになりました。脆弱性GraphQL APIに以下のフィールドが追加されました。\n\n* `initialDetectedPipeline`：脆弱性が導入された際の追加のコミット情報（例：作成者のユーザー名）を取得するために使用\n* `latestDetectedPipeline`：脆弱性が削除された際の追加のコミット情報（例：コミットSHA）を取得するために使用\n\n[ドキュメント](https://docs.gitlab.com/api/graphql/reference/#vulnerability)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/468913) \n\n### 認証情報インベントリにサービスアカウントトークンを追加\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nGitLabの認証情報インベントリでサービスアカウントトークンがサポートされるようになりました。これにより、ソフトウェアサプライチェーン全体で使用されているさまざまな認証方式を、より明確に把握・管理できるようになります。認証情報インベントリは、組織全体で使用されている認証情報の全体像を提供します。\n\n[ドキュメント](https://docs.gitlab.com/administration/credentials_inventory/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/421954) \n\n### GitLab Duo Self-HostedでMistral Smallが利用可能に\n\nSelf-Managed: Premium、Ultimate、Duo Enterprise\n\n[GitLab Duo Self-Hosted](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models)でMistral Smallを使用できるようになりました。このモデルはGitLab Self-Managedインスタンスで利用可能であり、GitLab Duo Self-HostedのGitLab Duo Chatおよびコード提案機能に完全対応する初のオープンソースモデルです。\n\n[ドキュメント](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/18202)\n\n## バグ修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。\n\n18.2で提供されたすべてのバグ修正、パフォーマンスの強化、UI改善を確認するには、以下のリンクをクリックしてください。\n\n* [バグ修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=18.2&first_page_size=100)\n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=18.2)\n* [UIの改善](https://papercuts.gitlab.com/?milestone=18.2)\n\n## 非推奨事項\n\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。[](https://docs.gitlab.com/ee/update/deprecations.html#resource-owner-password-credentials-grant-is-deprecated)[](https://docs.gitlab.com/ee/update/deprecations.html#coverage-guided-fuzz-testing-is-deprecated)\n\n## 削除された機能と破壊的な変更\n\n削除されたすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n[](https://docs.gitlab.com/ee/update/deprecations.html#api-discovery-will-use-branch-pipelines-by-default)[](https://docs.gitlab.com/ee/update/deprecations.html#toggle-notes-confidentiality-on-apis)\n\n### 変更履歴\n\n変更内容をすべて表示するには、次のページから変更履歴を確認してください。\n\n* [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)\n* [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)\n* [VS CodeのGitLab Workflow](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)\n* [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n### インストール\n\nGitLabを新規にインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/ja-jp/install/)をご覧ください。\n\n### 更新事項\n\n[更新ページ](https://about.gitlab.com/ja-jp/update/)をご覧ください。\n\n### ご不明な点がある場合\n\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスして質問を投稿してください。\n\n### GitLabサブスクリプションプラン\n\n* [Free](https://about.gitlab.com/pricing/)\\\n  ユーザー向けの永久無料機能を提供\n* [Premium](https://about.gitlab.com/pricing/premium/)\\\n  チームの生産性と調整を強化\n* [Ultimate](https://about.gitlab.com/pricing/ultimate/)\\\n  組織全体のセキュリティ、コンプライアンス、プランニングに対応\n\nGitLabのすべての機能を[無料](https://about.gitlab.com/free-trial/?hosted=saas)でお試しいただけます。\n\n*監修：ソリス ジェレズ / Jerez Solis [@jerezs](https://gitlab.com/jerezs)\n（GitLab合同会社 ソリューションアーキテクト本部 ソリューションアーキテクト）*\n\n### 過去の日本語リリース情報\n\n* [GitLab 18.2](https://about.gitlab.com/ja-jp/blog/gitlab-18-02-release)\n* [GitLab 18.1](https://about.gitlab.com/ja-jp/blog/gitlab-18-01-release)\n* [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n* [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n* [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n* [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)\n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)\n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)\n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)\n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)\n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)",[676],"2025-07-24","2025-07-18",[671,672,14,110],"GitLab 18.2でリリースした最新機能を公開します。",{"featured":92,"template":679,"slug":721},"gitlab-18-02-release","content:ja-jp:blog:gitlab-18-02-release.yml","Gitlab 18 02 Release","ja-jp/blog/gitlab-18-02-release.yml","ja-jp/blog/gitlab-18-02-release",{"_path":727,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":728,"content":731,"config":738,"_id":740,"_type":16,"title":741,"_source":18,"_file":742,"_stem":743,"_extension":21},"/ja-jp/blog/gitlab-18-01-release",{"noIndex":6,"title":729,"description":730},"GitLab 18.1 リリース","GitLab 18.1でリリースした最新機能をご紹介します。",{"heroImage":732,"body":733,"authors":734,"updatedDate":735,"date":736,"title":729,"tags":737,"description":730,"category":14},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1750396128/vak5nlffgockma115495.png","本ブログは、[GitLab 18.1 Release](https://about.gitlab.com/releases/2025/06/19/gitlab-18-1-released/)の抄訳です。内容に相違がある場合は、原文が優先されます。\n\n## Maven仮想レジストリ（ベータ版）とGitLab Duoコードレビュー搭載のGitLab 18.1リリース\n\nこのたび、GitLab 18.1のリリースを発表しました。このリリースでは、Maven仮想レジストリ（ベータ版）、GitLab Duoコードレビュー、漏洩パスワードの検出、SLSAレベル1準拠を実現するCI/CDコンポーネントなど、さまざまな機能が追加されました。\n\nこれらの機能は、今回のリリースに含まれる110件以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLab 18.1には、GitLabコミュニティのユーザーから311件ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースもユーザーのみなさまの協力なしには実現しませんでした。\n\n来月のリリースで予定されている内容を先取りするには、[今後のリリースページ](https://about.gitlab.com/upcoming-releases/)をご覧ください。\n\n[GitLab 18.1のリリースでは、Maven仮想レジストリ（ベータ版）とGitLab Duoコードレビューが追加されました。クリックしてSNSで共有しましょう！](http://twitter.com/share?text=GitLab+18.1%E3%81%AE%E3%83%AA%E3%83%AA%E3%83%BC%E3%82%B9%E3%81%A7%E3%81%AF%E3%80%81Maven%E4%BB%AE%E6%83%B3%E3%83%AC%E3%82%B8%E3%82%B9%E3%83%88%E3%83%AA%EF%BC%88%E3%83%99%E3%83%BC%E3%82%BF%E7%89%88%EF%BC%89%E3%81%A8GitLab+Duo%E3%82%B3%E3%83%BC%E3%83%89%E3%83%AC%E3%83%93%E3%83%A5%E3%83%BC%E3%81%8C%E8%BF%BD%E5%8A%A0%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%E3%82%AF%E3%83%AA%E3%83%83%E3%82%AF%E3%81%97%E3%81%A6SNS%E3%81%A7%E5%85%B1%E6%9C%89%E3%81%97%E3%81%BE%E3%81%97%E3%82%87%E3%81%86%EF%BC%81&url=https://about.gitlab.com/ja-jp/blog/gitlab-18-1-release/&hashtags=)\n\n## 今月の[注目コントリビューター](https://contributors.gitlab.com/docs/notable-contributors)は[](https://gitlab.com/karras)[Chaitanya Sonwane](https://gitlab.com/chaitanyason9)さんです\n\n\u003Cimg src=\"https://about.gitlab.com/images/notable-contributor-logo.svg\">\n\nChaitanya Sonwaneさんは、継続的な認証機能の強化により、GitLabのセキュリティ機能向上に貢献しています。[2025年に13件のコントリビュートがマージされ](https://contributors.gitlab.com/users/chaitanyason9?fromDate=2025-01-01&toDate=2025-12-31)、認証情報インベントリのフィルタリング、サービスアカウント管理、作業アイテムの使いやすさが向上しました。以前には[GitLab 17.11の主要機能](https://about.gitlab.com/releases/2025/04/17/gitlab-17-11-released/#token-statistics-for-service-account-management)としてサービスアカウントのトークン統計情報をひと目で確認できる機能を手がけ、サービスアカウントの管理を容易にする「一目でわかる」情報を提供しました。Chaitanyaさんは現在、[作業アイテムリストのソート設定をコンテキスト固有にする改善](https://gitlab.com/gitlab-org/gitlab/-/issues/503587)に取り組み、GitLabの製品計画におけるユーザーエクスペリエンスをさらに向上させています。\n\nChaitanyaさんの活躍により、GitLabを利用する組織のセキュリティが強化され、サービスアカウントの使用状況がプロジェクト全体で把握しやすくなりました。現在では、チームが認証情報をより効果的に追跡、ローテーションできるようになったことで、セキュリティの脆弱性につながりかねない、未管理の認証情報のリスクが軽減されています。\n\n「認証情報インベントリとサービスアカウントに対するChaitanyaさんのコントリビュートは、セキュリティ分野において非常に貴重なものです」と[Eduardo Sanz-Garcia（](https://gitlab.com/eduardosanz)ソフトウェアサプライチェーンセキュリティステージの認証グループのシニアフロントエンドエンジニア）は語ります。Eduardoは、[GitLabの認証チーム](https://about.gitlab.com/direction/software_supply_chain_security/authentication/)による推薦も後押ししました。\n\nさらに彼は「Chaitanyaさんは、トークン統計のコンセプトの実装に貢献してくれました。認証情報インベントリの取り組みにより、認証情報の追跡とモニタリングを強化する、非常に要望の多かった機能が提供されたのです。非常に素晴らしいコントリビュートでした」とも付け加えています。\n\nChaitanyaさんはTATA AIGのソフトウェアエンジニアです。セキュリティ上の課題に積極的に取り組み、自らのコントリビュートを改善するための継続的なフォローアップを行っています。\n\nこの場を借りて、GitLabのセキュリティ基盤やその他の製品にコントリビュートしてくれたChaitanyaさんに感謝します！\n\n## GitLab 18.1リリースの主な改善点\n\n### Maven仮想レジストリがベータ版で利用可能に\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nMaven仮想レジストリは、GitLabでのMaven依存関係管理を簡素化するものです。Maven仮想レジストリを使用しない場合、Maven Central、プライベートリポジトリ、GitLabパッケージレジストリからの依存関係にアクセスするための設定を個別に行う必要があります。こうしたアプローチでは、リポジトリへの順次クエリによってビルドが遅くなり、セキュリティ監査とコンプライアンスレポート作成が複雑になります。\n\nMaven仮想レジストリは、複数のアップストリームリポジトリを単一のエンドポイントに集約することで、このような問題に対処します。プラットフォームエンジニアは、1つのURLを介してMaven Central、プライベートレジストリ、GitLabパッケージレジストリを設定できます。インテリジェントキャッシュはビルドパフォーマンスを向上させ、GitLabの認証システムと統合されます。これにより、設定オーバーヘッドの削減、ビルドの高速化、セキュリティとコンプライアンス向上を目的として一元管理されたアクセス制御が実現します。\n\nMaven仮想レジストリは現在、GitLab.comとGitLab Self-Managedの両方で、GitLab PremiumおよびUltimateのお客様にベータ版として提供されています。一般公開リリースには、レジストリ設定用のWebベースUI、共有可能なアップストリーム機能、キャッシュ管理のためのライフサイクルポリシー、強化された分析機能などが追加される予定です。現在のベータ版では、トップレベルグループあたり最大20の仮想レジストリ、仮想レジストリあたり最大20のアップストリームまでと制限されており、ベータ期間中の設定はAPIのみで行えます。\n\n企業のお客様を対象としたMaven仮想レジストリベータプログラムを実施しています。最終リリースの品質向上にご協力をお願いいたします。ベータ版にご参加いただくお客様には、機能への早期アクセス、GitLab製品チームとの直接のやり取り、評価期間中の優先サポートを提供します。ベータプログラムに参加するには、[イシュー498139](https://gitlab.com/gitlab-org/gitlab/-/issues/498139)でご興味があることをお知らせいただき、ユースケースの詳細を提供してください。また、フィードバックや提案は[イシュー543045](https://gitlab.com/gitlab-org/gitlab/-/issues/543045)にお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/user/packages/virtual_registry/maven/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14137)[](https://gitlab.com/groups/gitlab-org/-/epics/14137)\n\n\u003C!-- blank line -->\n\n\u003Cfigure class=\"video_container\">\n  \u003Ciframe src=\"https://www.youtube.com/embed/ZkIkaJDEcEE?si=F7dfSCtzBIv02_is\" frameborder=\"0\" allowfullscreen=\"true\"> \u003C/iframe>\n\u003C/figure>\n\u003C!-- blank line -->\n\n### GitLab Duoコードレビューが一般公開開始\n\n> SaaS: Premium、Ultimate、Duo Enterprise\\\n> Self-Managed: Premium、Ultimate、Duo Enterprise\n\nGitLab Duoコードレビューが一般公開され、本番環境で使用できるようになりました。AI搭載のこのコードレビューアシスタントは、マージリクエストに対して的確で自動化されたフィードバックを提供し、従来のコードレビュープロセスを変革します。これにより、人間のレビュアーが関与する前に、潜在的なバグ、セキュリティの脆弱性、コード品質の問題を特定できるため、レビュープロセス全体を徹底的かつ効率的に行うことができます。GitLab Duoコードレビューには以下の機能が含まれています。\n\n* **自動初期レビュー**：コードの変更内容を分析し、潜在的な問題、改善点、ベストプラクティスに関する包括的なフィードバックを提供します。  \n* **対話ベースで改善**：マージリクエストコメントで`@GitLabDuo`をメンションすると、特定の変更や質問に対する的確なフィードバックを受け取ることができます。  \n* **実行可能な提案**：多くの提案をブラウザから直接適用できるため、改善プロセスが効率化されます。  \n* **文脈を理解した分析**：変更されたファイルの内容を理解し、プロジェクトに特化した関連性の高い推奨事項を提供します。\n\nGitLab Duoコードレビューをリクエストするには、次の手順に従います。\n\n* マージリクエストで、`/assign_reviewer` `@GitLabDuo`クイックアクションを使用して`@GitLabDuo`をレビュアーとして追加するか、GitLab Duoをレビュアーとして直接割り当てます。  \n* コメントで`@GitLabDuo`をメンションすると、ディスカッションスレッドで特定の質問をしたり、詳細なフィードバックをリクエストしたりできます。  \n* プロジェクト設定で自動レビューを有効にすると、GitLab Duoがすべての新しいマージリクエストを自動的にレビューします。\n\nGitLab Duoコードレビューを活用することで、チームがより高いコード品質基準を維持しながら、手動レビューサイクルに費やす時間を短縮できます。問題を早期に発見し、教育的なフィードバックを提供することで、開発チームにとって品質管理ツールと学習ツールの両方の役割を果たします。\n\nベータ版時のGitLab Duoコードレビューの動作はこちらを[ご覧ください](https://www.youtube.com/watch?v=FlHqfMMfbzQ)。\n\n[イシュー517386](https://gitlab.com/gitlab-org/gitlab/-/issues/517386)でご経験やフィードバックをお寄せいただき、本機能の継続的な改善にご協力ください。\n\n[ドキュメント](https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#have-gitlab-duo-review-your-code)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13979)[](https://gitlab.com/groups/gitlab-org/-/epics/13979)\n\n![GitLab Duoコードレビューが一般公開開始](https://about.gitlab.com/images/18_1/create-duo-code-review.png)\n\n### ネイティブGitLab認証情報の漏洩パスワード検出\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: -\n\nGitLab.comへのサインイン時に、アカウント認証情報の安全なチェックが実行されるようになりました。お使いのパスワードが既知の情報漏洩に含まれている場合、GitLabにバナーが表示され、メール通知が送信されます。これらの通知には、認証情報の更新手順が記載されています。\n\nセキュリティを最大限に高めるために、GitLabでは以下を推奨しています。\n\n* GitLab専用の強力なパスワードの使用  \n* 2要素認証の有効化  \n* アカウントアクティビティの定期的な確認\n\n注：この機能はネイティブGitLabのユーザー名とパスワードでのみ利用可能です。SSO認証情報は対象外です。\n\n[ドキュメント](https://docs.gitlab.com/security/compromised_password_detection/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/549865)[](https://gitlab.com/gitlab-org/gitlab/-/issues/549865)[](https://gitlab.com/gitlab-org/gitlab/-/issues/549865)\n\n![ネイティブGitLab認証情報の漏洩パスワード検出](https://about.gitlab.com/images/18_1/sscs_password_alert.png)\n\n### CI/CDコンポーネントでSLSAレベル1のコンプライアンスに対応\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate  \n\nGitLabの新しいCI/CDコンポーネントを使用することで、[SLSA](https://slsa.dev/)レベル1のコンプライアンスに対応できるようになりました。このコンポーネントは、GitLab Runnerが生成するSLSA準拠の [アーティファクトの来歴メタデータ](https://docs.gitlab.com/ci/runners/configure_runners/#artifact-provenance-metadata)に対して署名と検証を実行します。また、[Sigstore Cosignの機能](https://docs.gitlab.com/ee/ci/yaml/signing_examples.html)を再利用可能なモジュールとして提供し、CI/CDワークフローに簡単に統合できるようにします。\n\n[ドキュメント](https://docs.gitlab.com/ci/pipelines/pipeline_security/#sign-and-verify-slsa-provenance-with-a-cicd-component)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15859)\n\n[](https://gitlab.com/groups/gitlab-org/-/epics/15859)\n\n![CI/CDコンポーネントでSLSAレベル1のコンプライアンスに対応](https://about.gitlab.com/images/18_1/SLSA_component.png)\n\n## GitLab 18.1リリースに含まれるその他の改善点\n\n### コード検索で複数の検索結果の統合表示が可能に\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\n完全一致コードの検索（ベータ版）では、同じファイル内の複数の検索結果を単一のビューに統合して表示できるようになりました。この改善により、次のことが可能になります。\n\n* 孤立した行表示ではなく、隣接する一致間のコンテキストを保持  \n* 一致する内容が近い場合に重複コンテンツを排除し、視覚的な混乱を軽減  \n* ファイルごとの一致数を明確に表示することで、ナビゲーションを強化  \n* エディタでの表示と同様にコードを表示することで、可読性を改善\n\nこの変更により、リポジトリ全体のコードパターンの発見と理解がより効率的になりました。\n\n[ドキュメント](https://docs.gitlab.com/integration/exact_code_search/zoekt/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13127)\n\n\u003C!-- blank line -->\n\n\u003Cfigure class=\"video_container\">\n  \u003Ciframe src=\"https://www.youtube.com/embed/wx2D39UdUoQ?si=fvjYK-rYVHPgVgzs\" frameborder=\"0\" allowfullscreen=\"true\"> \u003C/iframe>\n\u003C/figure>\n\u003C!-- blank line -->\n\n### 権限チェック機能を強化したCODEOWNERSファイル検証\n\nSaaS: Premium、Ultimate\\\nSelf-Managed: Premium、Ultimate\n\nGitLabでは、基本的な構文チェックを超えた、CODEOWNERSファイルに対するより強化された検証が提供されるようになりました。CODEOWNERSファイルを表示すると、GitLabが自動的に包括的な検証を実行し、マージリクエストのワークフローに影響を与える前に構文エラーと権限の問題を特定します。\n\nこの強化された検証では、CODEOWNERSファイル内の最初の200のユニークなユーザーとグループの参照をチェックし、次のことを検証します。\n\n* 参照されたすべてのユーザーとグループがこのプロジェクトにアクセスできること  \n* ユーザーに、マージリクエストを承認するために必要な権限があること  \n* グループに、デベロッパーレベル以上のアクセス権があること  \n* グループに、マージリクエストの承認権限を持つユーザーが少なくとも1人含まれていること\n\nこの事前検証により、設定上の問題を早期に発見して承認ワークフローの中断を防ぎ、マージリクエストが作成されたときにGitLabコードオーナーが実際にレビューの責任を果たせるようにできます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/codeowners/troubleshooting.html#validate-your-codeowners-file)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15598)\n\n### VS Codeでダウンストリームパイプラインのジョブログを表示\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nVS Code用GitLab Workflow拡張機能で、ダウンストリームパイプラインからのジョブログをエディタ内で直接表示できるようになりました。これまで、子パイプラインからログを確認するには、GitLab Webインターフェイスに切り替える必要がありました。\n\nこの機能は、[GitLab共同開発](https://about.gitlab.com/community/co-create/)を通じて開発されました。この場を借りて、コントリビュートしてくれたTim Ryanさんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/editor_extensions/visual_studio_code/cicd/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/issues/1895)\n\n\n\n![VS Codeでダウンストリームパイプラインのジョブログを表示](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750659268/orzwm4kjqdag8fe0psvr.png)\n\n### シークレット検出のデフォルトルールとDAST検出の同等性\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nDASTアナライザーが、GitLabのシークレット検出アナライザーで使用されるものと同じデフォルトのシークレット検出ルールを自動的に取り込むようになりました。この改善により、両方のアナライザーで検出されるシークレットの種類に一貫性が確保されます。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/dast/browser/checks/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/549990)\n\n### 依存関係リストでコンポーネントバージョンによるフィルタリング\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\n依存関係リストで、コンポーネントのバージョン番号によるフィルタリングがサポートされるようになりました。複数のバージョン（`バージョン=1.1、1.2、1.4`など）を選択できますが、バージョン範囲指定はサポートされていません。この機能は、グループとプロジェクトの両方で利用できます。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/dependency_list/#filter-dependency-list)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16431)\n\n![依存関係リストでコンポーネントバージョンによるフィルタリング](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750659404/fepyzz2uv3j47bjcehhi.png)\n\n\n\n### コンプライアンスステータスレポートでコントロールステータスの一覧がポップアップで表示されるように\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nコンプライアンスステータスレポートのコントロールには、次の3つのステータスがあります。\n\n* 合格  \n* 失敗  \n* 保留中\n\nこれまでは、要求事項に関連付けられているコントロールの数に関係なく、少なくとも1つのコントロールが「保留中」の場合、要求事項行全体が「保留中」として表示されていました。これは、失敗したコントロールの表示方法とは一貫性がありませんでした。失敗したコントロールが1つでもある場合は、要求事項に関連付けられた全コントロール数と失敗の数が表示されます。\n\n「保留中」のコントロールに関する詳細なコンテキストと情報を提供するため、要求事項行のステータスにカーソルを合わせると、各コントロールのステータスを一覧表示するポップアップが表示されるようになりました。これにより、単に「保留中」という全体ステータスを確認するだけでなく、どのコントロールが保留中で、どのコントロールが合格または失敗しているかを具体的に把握できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/compliance/compliance_center/compliance_status_report/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/521757)\n\n### ボットユーザーと人間のユーザーのフィルタリング\n\n> SaaS: -\\\n> Self-Managed: Free、Premium、Ultimate\n\n運用が進んだGitLabインスタンスでは、多くの場合、人間とボットの両方のユーザーが多数存在します。今回のリリースで、管理者エリアのユーザーリストをユーザータイプでフィルタリングできる機能が追加されました。この機能により、以下のことが可能になります。\n\n* 人間のユーザーと自動化アカウントを区別して迅速に特定、管理  \n* 特定のユーザータイプに絞った管理アクションを実行  \n* ユーザーの監査と管理のワークフローの効率化\n\n[ドキュメント](https://docs.gitlab.com/administration/moderate_users/#view-users-by-type)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/541186)\n\n![ボットユーザーと人間のユーザーのフィルタリング](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750659653/prkshqzxg5785p69yshd.png)\n\n[](https://gitlab.com/gitlab-org/gitlab/-/issues/541186)\n\n### ユーザープロフィールのORCID識別子\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nユーザープロフィールにORCID識別子を設定できるようになり、GitLabが研究者や学術コミュニティにとってより使いやすく価値あるものになりました。[ORCID](https://orcid.org/)（Open Researcher and Contributor ID）は、研究者に永続的なデジタル識別子を提供し、他の研究者との区別を可能にするとともに、研究者とその業績を自動的に関連付けることで、適切な評価を支援するものです。\n\nこの機能は、学術コミュニティからの長年の要望に応えるため、アルトワ大学の修士課程の学生であるThomas LabaletteとErwan Hivinが[Daniel Le Berre](https://www.ouvrirlascience.fr/appointment-of-daniel-le-berre-as-the-national-coordinator-for-higher-education-and-research-software-forges-in-france/)の指導の下、コミュニティに貢献することを目的に開発したものです。\n\n[ドキュメント](https://docs.gitlab.com/user/profile/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/23543)\n\n[](https://gitlab.com/gitlab-org/gitlab/-/issues/23543)\n\n![ユーザープロフィールのORCID識別子](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750663008/oogvxelirqapyxp10pha.png)\n\n\n\n### サービスアカウントのパイプライン通知への登録\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nサービスアカウントによってトリガーされたパイプラインイベントの通知を、受信できるようになりました。通知はパイプラインが合格、失敗、または修正された場合に送信されます。これまでは、サービスアカウントに有効なカスタムメールアドレスが設定されている場合にのみ、そのサービスアカウントのメールアドレスに通知が送信されていました。\n\nこの場を借りて、コントリビュートしてくれた[Densett](https://gitlab.com/Densett)さん、[Gilles Dehaudt](https://gitlab.com/tonton1728)さん、[Lenain](https://gitlab.com/lenaing)さん、[Geoffrey McQuat](https://gitlab.com/gmcquat)さん、[Raphaël Bihoré](https://gitlab.com/rbihore)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/user/profile/notifications/#notification-events-on-issues-merge-requests-and-epics)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/515629)\n\n### 無効となっているパーソナルアクセストークンの表示\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLabは、有効期限が切れたり、失効したりしたアクセストークンを自動的に無効化します。今回の変更では、無効となっているトークンを確認できるようになりました。これまでは、アクセストークンが無効になると表示されなくなっていました。この変更により、こうしたトークンのトレーサビリティとセキュリティが向上します。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/425053)\n\n\u003C!-- blank line -->\n\n\u003Cfigure class=\"video_container\">\n  \u003Ciframe src=\"https://www.youtube.com/embed/weEU6pukbag?si=ebijnyBQdW1_5yBl\" frameborder=\"0\" allowfullscreen=\"true\"> \u003C/iframe>\n\u003C/figure>\n\u003C!-- blank line -->\n\n### GitLab Query Language（GLQL）ビューでのエピックサポート（ベータ版）\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLab Query Language（GLQL）ビューが大幅に改善されました。今後は、クエリでエピックをタイプとして使用できるようになり、グループ全体のエピック検索や親エピックへのクエリが可能になります。\n\nこの機能強化により計画・追跡のワークフローが大きく向上し、エピックレベルでのクエリや整理が格段に効率化されます。\n\n[ドキュメント](https://docs.gitlab.com/user/glql/fields/#epic)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab-query-language/glql-rust/-/issues/30)\n\n### レビューパネルによるマージリクエストのレビューエクスペリエンスの強化\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nマージリクエストのレビューを行う際、レビューを送信する前にこれまでのフィードバックを参照すると役立つことがあります。これまでは、最終コメントと保留中コメントが別々のポップアップに分かれていたため、全体像を把握することが困難でした。\n\nコードレビュー時に、保留中の下書きコメントを一箇所にまとめて表示する専用ドロワーが利用できるようになりました。強化されたレビューパネルでは、レビュー送信インターフェイスがよりアクセスしやすい場所に移動し、保留中のコメント数を示す番号付きバッジが表示されます。パネルを開くと、下にスクロールできるリストに下書きコメントがすべて表示されるため、送信前のフィードバックの確認と管理が簡単になります。\n\n[ドキュメント](https://docs.gitlab.com/user/project/merge_requests/reviews/#submit-a-review)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/525841)\n\n[](https://gitlab.com/gitlab-org/gitlab/-/issues/525841)\n\n![レビューパネルによるマージリクエストのレビューエクスペリエンスの強化](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750663218/yfbrzecnuynpb1g57854.png)\n\n\n\n### GitLab Runner 18.1\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLab Runner 18.1もリリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドのエージェントです。GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。\n\nバグ修正：\n\n* [GitLab 17.10または17.11にアップグレードすると、Runnerがジョブをリクエストしたときに404エラーが発生する可能性があります](https://gitlab.com/gitlab-org/gitlab/-/issues/543351)。\n\nすべての変更の一覧は、GitLab Runnerの[変更履歴](https://gitlab.com/gitlab-org/gitlab-runner/blob/18-1-stable/CHANGELOG.md)で確認できます。\n\n[ドキュメント](https://docs.gitlab.com/runner)\n\n### 高度なSASTのPHPサポート\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nGitLabの高度なSASTにPHPサポートを追加しました。この新しいファイル間、関数間スキャン機能を使用するには、[高度なSASTを有効](https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast/#enable-advanced-sast-scanning)にします。高度なSASTをすでに有効にしている場合、PHPサポートは自動的に有効になります。\n\n高度なSASTが各言語で検出する脆弱性の種類を確認するには、[高度なSASTカバレッジページ](https://docs.gitlab.com/user/application_security/sast/advanced_sast_coverage/)を参照してください。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast/#supported-languages)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14273)\n\n### パイプライン実行ポリシーにおける変数の優先順位制御\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\n多くの場合、セキュリティチームはセキュリティ保証とデベロッパーエクスペリエンスの間で微妙なバランスを取ることになります。セキュリティスキャンが適切に実行されていることを確認するのは重要ですが、セキュリティアナライザーが正常に動作するためには、開発チームからの特定のインプットが必要な場合があります。変数の優先順位制御により、セキュリティチームは新しい`variables_override`設定オプションを通じて、パイプライン実行ポリシーにおける変数の処理方法を細かく制御できるようになりました。\n\nこの新しい設定を使用すると、次のことが可能になります。\n\n* プロジェクト固有のコンテナイメージパス（`CS_IMAGE`）を許可するコンテナスキャンポリシーを適用  \n* `SAST_EXCLUDED_PATHS`などの低リスク変数は許可し、`SAST_DISABLED`などの高リスク変数はブロック  \n* `AWS_CREDENTIALS`などのグローバルCI/CD変数で保護（マスクまたは非表示）されたグローバル共有認証情報を定義しつつ、必要に応じてプロジェクトレベルのCI/CD変数によるプロジェクト固有の上書きを許可\n\nこの強力な機能は、次の2つのアプローチをサポートしています。\n\n* **デフォルトで変数をロックする**（`allow: false`）：例外として指定した特定の変数を除き、すべての変数をロック  \n* **デフォルトで変数を許可する**`（allow: true`）：変数のカスタマイズを許可するが、重大なリスクのある変数を例外として指定することで制限  \n\n\n\nパイプライン実行ポリシーによってCI/CDジョブが実行される際のトレーサビリティとトラブルシューティングを改善するために、ジョブログ機能も導入されました。これにより、デベロッパーとセキュリティチームは、どのジョブがポリシーによって実行されたかを簡単に特定できますジョブログでは、変数の上書きによる影響の詳細を確認でき、どの変数がポリシーによって上書きまたはロックされているかを把握するのに役立ちます。\n\n**実際の影響**\n\nこの機能強化により、セキュリティ要件とデベロッパーの柔軟性のニーズとの間のギャップが解消されます。\n\n* セキュリティチーム：プロジェクト固有のカスタマイズを許可しつつ、標準化されたスキャンを実行できる  \n* デベロッパーは：ポリシーの例外をリクエストすることなく、プロジェクト固有の変数を制御できる  \n* 組織は：開発ワークフローを混乱させることなく、一貫したセキュリティポリシーを実装できる\n\nこの重要な変数制御機能により、GitLabは組織が開発の柔軟性を保ちながら強固なセキュリティポリシーを導入できる環境を提供します。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/policies/pipeline_execution_policies/#variables_override-type)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16430)\n\n\n\n![パイプライン実行ポリシーにおける変数の優先順位制御](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750663308/h1oukhyd4ky1w6spdxpo.png)\n\n\n\n### 外部カスタムコントロールの`Name`を定義\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nこれまでは、カスタムコンプライアンスフレームワークを作成する際に外部カスタムコントロールの名前を定義できず、GitLabコントロールと並んでリスト表示される外部コントロールを識別することが困難でした。\n\n今回、外部カスタムコントロールを定義する際のワークフローの一部として`Name`フィールドが追加されました。これにより、複数の外部カスタムコントロールを作成し、それぞれに固有の名前を設定して明確に区別できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/compliance/compliance_frameworks/#external-controls)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/527007)\n\n### GitLab Duo脆弱性の修正のためのSASTカバレッジの向上\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nこれまでは、次のCommon Weakness Enumeration（CWE）識別子を持つ検出された脆弱性を手動で解決する必要がありました。\n\n* CWE-78（コマンドインジェクション）  \n* CWE-89（SQLインジェクション）\n\n現在は、GitLab Duo脆弱性の修正により、これらの脆弱性を自動的に修正できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/vulnerabilities/#supported-vulnerabilities-for-vulnerability-resolution)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/534307)\n\n### コンプライアンスフレームワークUIにおける要件のページネーション\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nコンプライアンスフレームワークを作成する際は、最大50個の要件を指定できます。\n\nただし、これほど多くの要件があると、UIで大きな表示領域を占めるため、コンプライアンスフレームワークの操作が非常に困難になります。\n\n今回のリリースでは、コンプライアンスフレームワークに多数の要件が含まれている場合でも、ユーザーが要件を簡単に閲覧、検索、選択できるよう、要件のページネーション機能を導入しました。\n\n[ドキュメント](https://docs.gitlab.com/user/compliance/compliance_frameworks/#add-requirements)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/531039)\n\n### コンプライアンスセンターのUIパフォーマンスとフィルタリングを改善\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nコンプライアンスセンターのUIパフォーマンスとフィルタリングオプションの改善を継続しています。今回のリリースでは、次のことを行いました。\n\n* 特に多くの要件とプロジェクトが含まれる場合に、**フレームワークの編集**ページのUIスピードとパフォーマンスを改善しました。  \n* コンプライアンスセンターの**コンプライアンスステータスレポート**タブで、要件、プロジェクト、またはフレームワーク別にグループ化できる新しいフィルタリングオプションを導入しました。\n\nこれらの改善を行うことで、コンプライアンスセンターを定期的に利用するお客様に対し、コンプライアンスセンターと関連機能が大規模環境でも継続して高いパフォーマンスを発揮できるようにしています。\n\n[ドキュメント](https://docs.gitlab.com/user/compliance/compliance_center/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/508188)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/478216)\n\n### GraphQL APIの`projectMembers`に新しい`accessLevels`引数を追加\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGraphQL APIの`projectMembers`フィールドに`accessLevels`引数が追加されました。この引数を使用すると、APIコールから直接アクセスレベル別にプロジェクトメンバーをフィルタリングできます。これまでは、プロジェクトメンバーの全リストを取得してからローカルでフィルターを適用する必要があり、これにより計算オーバーヘッドが大幅に増加していました。現在では、プロジェクトの権限分析や所有権グラフの生成がより高速化し、リソース効率も向上しています。この機能強化は、複雑な権限構造を持つ大規模デプロイを管理する組織にとって特に価値があります。\n\n[ドキュメント](https://docs.gitlab.com/api/graphql/reference/#projectprojectmembers)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/541386)\n\n## バグ修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。\n\n18.1で提供されたすべてのバグ修正、パフォーマンスの強化、UI改善を確認するには、以下のリンクをクリックしてください。\n\n* [バグ修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=18.1)  \n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=18.1)  \n* [UIの改善](https://papercuts.gitlab.com/?milestone=18.1)\n\n## 非推奨事項\n\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。[](https://docs.gitlab.com/ee/update/deprecations.html#resource-owner-password-credentials-grant-is-deprecated)[](https://docs.gitlab.com/ee/update/deprecations.html#coverage-guided-fuzz-testing-is-deprecated)\n\n## 削除された機能と破壊的な変更\n\n削除されたすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n[](https://docs.gitlab.com/ee/update/deprecations.html#api-discovery-will-use-branch-pipelines-by-default)[](https://docs.gitlab.com/ee/update/deprecations.html#toggle-notes-confidentiality-on-apis)\n\n### 変更履歴\n\n変更内容をすべて表示するには、次のページから変更履歴を確認してください。\n\n* [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)  \n* [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)  \n* [VS CodeのGitLab Workflow](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)  \n* [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n### インストール\n\nGitLabを新規にインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/ja-jp/install/)をご覧ください。\n\n### 更新事項\n\n[更新ページ](https://about.gitlab.com/ja-jp/update/)をご覧ください。\n\n### ご不明な点がある場合\n\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスして質問を投稿してください。\n\n### GitLabサブスクリプションプラン\n\n* [Free](https://about.gitlab.com/pricing/)\\\n  ユーザー向けの永久無料機能を提供  \n* [Premium](https://about.gitlab.com/pricing/premium/)\\\n  チームの生産性と調整を強化  \n* [Ultimate](https://about.gitlab.com/pricing/ultimate/)\\\n  組織全体のセキュリティ、コンプライアンス、プランニングに対応\n\nGitLabのすべての機能を[無料](https://about.gitlab.com/free-trial/?hosted=saas)でお試しいただけます。  \n\n*監修：ソリス ジェレズ / Jerez Solis [@jerezs](https://gitlab.com/jerezs)\n（GitLab合同会社 ソリューションアーキテクト本部 ソリューションアーキテクト）*\n\n### 過去の日本語リリース情報\n\n* [GitLab 18.1](https://about.gitlab.com/ja-jp/blog/gitlab-18-01-release)\n* [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n* [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n* [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n* [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)  \n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)  \n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)  \n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)  \n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)  \n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)",[676],"2025-06-23","2025-06-20",[671,672,14,110],{"featured":6,"template":679,"slug":739},"gitlab-18-01-release","content:ja-jp:blog:gitlab-18-01-release.yml","Gitlab 18 01 Release","ja-jp/blog/gitlab-18-01-release.yml","ja-jp/blog/gitlab-18-01-release",{"_path":745,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":746,"content":749,"config":757,"_id":759,"_type":16,"title":760,"_source":18,"_file":761,"_stem":762,"_extension":21},"/ja-jp/blog/gitlab-ultimate-for-ibm-z-modern-devsecops-for-mainframes",{"noIndex":6,"description":747,"title":748},"GitLabとIBMの新しいソリューションは、シームレスな統合、CI/CDランナーサポート、エンドツーエンドの可視性、およびコスト効率により、メインフレームとクラウドネイティブ開発を橋渡しします。","GitLab Ultimate for IBM Z：メインフレーム向けモダンDevSecOps",{"title":748,"description":747,"body":750,"category":14,"tags":751,"authors":753,"heroImage":756,"date":736},"GitLabとIBMは、エンタープライズ開発における根本的な断絶を解決するためにパートナーシップを結びました。それは、メインフレーム開発者が分散環境の開発者と同じモダンなツール、ワークフロー、コラボレーション機能を使用できるようにすることです。GitLab Ultimate for IBM Zは、GitLab認定の統合DevSecOpsソリューションであり、メインフレーム環境に特化して設計されています。このソリューションにより、組織は時代遅れのレガシーライブラリマネージャーからのシームレスな移行を促進し、メインフレーム開発ワークフローをモダナイズできます。IBM z/OS上でネイティブに実行されるCI/CDパイプラインにより、お客様はイノベーションの加速と運用コストの削減を実現できます。\n\n## 現代におけるメインフレーム開発の課題\n\nミッションクリティカルなワークロードにIBM Zシステムを使用するエンタープライズ組織は、従来のDevSecOpsツールでは対応できない課題に直面しています。クラウドネイティブチームは、モダンな[CI/CD](https://about.gitlab.com/ja-jp/topics/ci-cd/)パイプライン、協調的な開発、自動化されたテストの恩恵を受けています。一方、メインフレームチームは取り残されることが多く、コストのかかる非効率性と運用サイロにつながる時代遅れのツールに縛られています。\n\nチームはSSH接続や手動ファイル転送などの回避策に頼ることが多く、これらはセキュリティの脆弱性や監査の困難さを生み出します。コンプライアンス要件が厳格な場合、これらの即席のソリューションは受け入れられないリスクとなります。同時に、組織は高価な並行ツールチェーンを維持しており、レガシーメインフレーム開発ツールは、モダンな代替品と比較して限られた機能しか提供しないにもかかわらず、プレミアムライセンスコストがかかっています。\n\nこの断片化は2つの問題を生み出します：配信サイクルの遅延と、モダンな開発体験を期待する開発者の採用の困難さです。\n\n> **「GitLab Ultimate for IBM Zは、長年の業界課題に対処する重要な一歩を表しています。IDCの調査によると、メインフレーム開発者は、配信の非効率性につながり、新しい人材を引き付けることを困難にするレガシーツールで作業することが多いことが示されています。このソリューションにより、モダンなDevSecOps機能と統一されたワークフローがメインフレームに直接もたらされます。これにより、開発者はより協調的かつ効率的に作業できるようになり、組織はイノベーションを加速し、メインフレーム開発をより広範なデジタルトランスフォーメーション戦略に統合することができます。」** \\\n> - Katie Norton、IDC DevSecOpsおよびソフトウェアサプライチェーンセキュリティ リサーチマネージャー\n\n## 統一された開発環境\n\n真のモダナイゼーションとは、単にメインフレーム開発を更新することではありません。それは、メインフレーム、クラウドネイティブ、Web、モバイル開発チームがシームレスに協力できる統一プラットフォームを作成することを意味します。\n\nGitLab Ultimate for IBM Zにより、開発者はz/OS、クラウド、またはオンプレミスインフラストラクチャにデプロイする場合でも、一貫したワークフローを使用できます。知識はサイロ化されるのではなく、チーム間で共有されます。レガシーシステムは動作を継続しながら、チームは独自のペースでモダンなプラクティスを採用できるため、組織はビジネスの中断なく段階的にモダナイズできます。\n\n組織がハイブリッドクラウド戦略を追求する中、GitLabはメインフレームとクラウドネイティブ環境にまたがるアプリケーションの基盤を提供します。\n\n## GitLab Ultimate for IBM Zとは？\n\nGitLab Ultimate for IBM Zは、ネイティブz/OSランナーサポートを提供し、メインフレームインフラストラクチャ上で直接シームレスなCI/CDパイプライン実行を可能にします。このGitLab認定ソリューションは、エンタープライズアプリケーションが要求するセキュリティと信頼性を維持しながら、複雑な回避策の必要性を排除するのに役立ちます。\n\nGitLabの包括的なDevSecOpsプラットフォームとIBMの深いメインフレーム専門知識の組み合わせにより、市場で独自のものが生まれます：エンタープライズレガシーシステムとクラウドネイティブイノベーションの間の真の架け橋を提供する認定ソリューションです。\n\n## GitLab Ultimate for IBM Zの機能\n\nGitLab Ultimate for IBM Zは、重要なビジネスシステムを維持しながらメインフレーム開発をモダナイズするために必要なツールをエンタープライズチームに提供します。\n\n**ネイティブz/OSランナーサポート**は、リモート接続に関連するセキュリティリスクとスケーラビリティのボトルネックを排除し、メインフレームコードが存在する場所で直接実行されるCI/CDパイプラインを通じて配信を加速します。\n\n**統一されたソースコード管理**は、高価なレガシーライブラリマネージャーをGitLabの検索可能でバージョン管理されたリポジトリシステムに置き換えることで、ツールチェーンをモダナイズし、ライセンスコストとメンテナンスのオーバーヘッドを削減するのに役立ちます。\n\n**IBM Developer for z/OS Enterprise Edition (IDzEE)とのシームレスな統合**は、依存関係ベースのビルド、自動コードスキャン、および使い慣れた開発環境内の包括的なデバッグツールを通じて、より高速なソフトウェアリリースを実現し、品質とセキュリティの両方を向上させます。\n\n**メインフレームと分散環境全体のエンドツーエンドの可視性**は、計画から本番までの包括的なプロジェクト管理を提供し、モダンな次世代開発ツールを通じて人材を維持するのに役立つ自動化されたDevOpsワークフローを可能にします。\n\n## 今すぐメインフレーム開発環境をモダナイズ\n\nGitLab Ultimate for IBM Zは、メインフレーム開発体験を変革する準備ができている組織向けに、現在利用可能です。詳細については、[GitLabとIBMのパートナーシップページ](https://about.gitlab.com/partners/technology-partners/ibm/)をご覧ください。",[286,14,110,752],"DevSecOps",[754,755],"Mike Flouton","Andy Bradfield","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750440008/myqt5vcjlffh8sszw507.png",{"featured":92,"template":679,"slug":758},"gitlab-ultimate-for-ibm-z-modern-devsecops-for-mainframes","content:ja-jp:blog:gitlab-ultimate-for-ibm-z-modern-devsecops-for-mainframes.yml","Gitlab Ultimate For Ibm Z Modern Devsecops For Mainframes","ja-jp/blog/gitlab-ultimate-for-ibm-z-modern-devsecops-for-mainframes.yml","ja-jp/blog/gitlab-ultimate-for-ibm-z-modern-devsecops-for-mainframes",{"_path":764,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":765,"content":773,"config":782,"_id":784,"_type":16,"title":785,"_source":18,"_file":786,"_stem":787,"_extension":21},"/ja-jp/blog/gitlab-named-a-leader-in-the-forrester-wave-devops-platforms-q2-2025",{"title":766,"description":767,"ogTitle":766,"ogDescription":767,"noIndex":6,"ogImage":768,"ogUrl":769,"ogSiteName":770,"ogType":771,"canonicalUrls":769,"schema":772},"2025年第2四半期の『Forrester Wave™: DevOps Platforms』でGitLabがリーダーの1社に位置付け","Forrester社は、GitLabプラットフォームを「オールインワンソリューションの中でももっともオールインワン」と称し、「一度の購入で標準化を目指す企業に適している」と付け加えています。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749658898/Blog/Hero%20Images/blog-post-image-forrester-wave-1800x945px-fy26.png","https://about.gitlab.com/blog/gitlab-named-a-leader-in-the-forrester-wave-devops-platforms-q2-2025","https://about.gitlab.com","article","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"2025年第2四半期の『Forrester Wave™: DevOps Platforms』でGitLabがリーダーの1社に位置付け\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Dave Steer\"}],\n        \"datePublished\": \"2025-06-02\",\n      }",{"title":766,"description":767,"authors":774,"heroImage":768,"date":776,"body":777,"category":14,"tags":778},[775],"Dave Steer","2025-06-02","DevSecOpsプラットフォームの選択は、企業が下すテクノロジー上の意思決定のうち、もっとも重要なもののひとつです。そのため、GitLabが[**2025年第2四半期の『Forrester Wave™: DevOps Platforms』でリーダーの1社として位置付け**](https://about.gitlab.com/forrester-wave-devops-platform/)されたことを大変光栄に思います。GitLabは、ゼロデイ体験、デベロッパー向けツール、ビルドの自動化と継続的インテグレーション、デプロイの自動化、AIリスクの軽減、AIの導入、組み込み型のセキュリティツール、プラットフォームの一貫性など、お客様がもっとも重視する基準において最上位のスコアを獲得しました。\n\n***「GitLabは、オールインワンソリューションの中でももっともオールインワンであり、一度の購入で標準化を目指す企業に適している」-*** Forrester Wave™: DevOps Platforms（2025年第2四半期）\n\nこの評価には、GitLabに日々寄せられているお客様の声が反映されています。つまり、お客様は安全なソフトウェアをより迅速に提供する必要がありますが、既存のソリューションでは、速度、セキュリティ、またはシンプルさのいずれかを妥協せざるを得ないということです。GitLabはこの3つすべてを妥協せずに実現できます。さらに、5月にリリースした[GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)では、テスト生成、コード提案、コードリファクタリングなどの[ネイティブAIのGitLab Duo機能](https://about.gitlab.com/ja-jp/blog/gitlab-premium-with-duo/)をGitLab PremiumとGitLab Ultimateに導入しました。追加費用なしで直接ご利用いただけます。\n\n> [今すぐレポートを読む](https://about.gitlab.com/forrester-wave-devops-platform/)\n\n![『Forrester Wave™: DevOps Platforms』（2025年第2四半期）の画像](https://res.cloudinary.com/about-gitlab-com/image/upload/v1749673518/Blog/Content%20Images/Image_DevOps-Platforms-Q2-2025.png)\n\n## エンタープライズレベルの制御を行い、AI変革の最前線に立ち続ける\n\nDevSecOpsは急速に進化しており、AIはその変化の最前線に立っています。しかしながら、多くのAIツールでは、最先端の機能、またはエンタープライズレベルのセキュリティのどちらかを選ばざるを得ません。\n\nForrester社は、**AIの導入**と**AIリスクの軽減**の両方の基準において、GitLabに5点（最上位の評価）を付けました。セキュリティを維持する革新的なAI機能の開発に注力していることが、お客様だけでなく、多くの方々に認められていることを嬉しく思います。\n\nこの2つの強みは、以下を含むGitLab DuoのAI機能群にも反映されています。\n\n* GitLab Duo Workflow（非公開ベータ版）：開発、セキュリティ、およびオペレーションにわたる複雑なタスクを処理する自律型AIエージェント。エンタープライズレベルのガードレールと監査証跡を提供します。  \n* GitLab Duo Agentic Chat：コードの説明からテスト作成まで、あらゆる場面で文脈を理解する会話型AIアシスト機能を提供します。知的財産の保護とプライバシー管理機能も組み込まれています。  \n* GitLab Duoコード提案：コードブロックの予測補完、関数ロジックの定義、テスト生成、正規表現パターンのような一般的なコードの提案を行うAIアシスト機能です。  \n* ネイティブAIのGitLab Duo脆弱性の修正：自動説明機能やマージリクエストの自動生成を活用して脆弱性を特定し修正することで、開発プロセスを効率化します。\n\n## より少ないリソースでより多くのことを実現\n\nDevSecOpsチームが求めているのは、ソフトウェアデリバリーライフサイクル（SDLC）の一部だけを支援するようなツールやインテグレーションではないという声を、私たちははっきりと受け取っています。SDLC全体をカバーする、シームレスで統合されたデベロッパーエクスペリエンスが必要なのです。\n\n以下の基準でGitLabが獲得したスコアは、当社の顧客重視の戦略を裏付けるものであると考えています。\n\n* **ゼロデイエクスペリエンス**：Forrester社は、GitLabの「強力なゼロデイエクスペリエンス」について、「すべてがすぐに使える状態」であること、そして豊富な移行ツールとチュートリアルが用意されていることを評価しています。 \n* **デベロッパー向けツール**：Forrester社は、AWSユーザー向けの自律型AIである[GitLab Duo with Amazon Q](https://about.gitlab.com/ja-jp/blog/gitlab-duo-with-amazon-q-agentic-ai-optimized-for-aws/)、クラウド開発環境、統合デベロッパープラットフォーム、ドキュメント用Wikiなどを例として挙げています。  \n* **プロジェクト計画と連携**：Forrester社は、GitLabの「強力なコンプライアンスセンター」の存在に加え、トップダウンおよびボトムアップでの連携を促進するツールがあることに注目しています。  \n* **パイプラインセキュリティ**：Forrester社は、パイプラインセキュリティの基準においてもGitLabに最上位のスコアを付けました。  \n* **ビルドの自動化と継続的インテグレーション**：Forrester社は、マルチステージのビルドパイプラインと強力なセルフホスティングのサポートを備えたビルドの自動化と継続的インテグレーションについて言及しています。\n\n## レポートを読む\n\n2025年第2四半期の『Forrester Wave™: DevOps Platforms』でリーダーの1社として評価されたことは、SDLC全体にわたり信頼できる唯一の情報源を提供する、当社のプラットフォームの幅広い機能と奥深さを物語っています。複数のツールやインテグレーションを使い分ける必要はもうありません。GitLabなら、シームレスで統合されたエクスペリエンスをとおして、生産性の向上、摩擦の軽減を実現します。今回の評価は、GitLabチームの努力、GitLabのオープンソースコミュニティからの多大な貢献、お客様からの貴重なフィードバック、そしてソフトウェア開発の未来を形作るという当社の熱意を反映していると考えております。\n\n> #### [今すぐレポートを読む](https://about.gitlab.com/forrester-wave-devops-platform/)\n\n*Forrester社がリサーチに関する発行物に掲載されている特定の企業、製品、ブランド、サービスを推奨することはありません。また、当該発行物に記載されている評価に基づいて、特定の企業やブランドの製品またはサービスを選択するよう個人に助言することもありません。情報は、利用可能な最適なリソースに基づいて示されます。意見はその時点での判断によるものであり、変更される可能性があります。詳細については、Forrester社の客観性に関する[こちらのページ](https://www.forrester.com/about-us/objectivity/)をご覧ください。*",[779,14,780,781],"research","news","DevSecOps platform",{"slug":783,"featured":92,"template":679},"gitlab-named-a-leader-in-the-forrester-wave-devops-platforms-q2-2025","content:ja-jp:blog:gitlab-named-a-leader-in-the-forrester-wave-devops-platforms-q2-2025.yml","Gitlab Named A Leader In The Forrester Wave Devops Platforms Q2 2025","ja-jp/blog/gitlab-named-a-leader-in-the-forrester-wave-devops-platforms-q2-2025.yml","ja-jp/blog/gitlab-named-a-leader-in-the-forrester-wave-devops-platforms-q2-2025",{"_path":789,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":790,"content":796,"config":806,"_id":808,"_type":16,"title":809,"_source":18,"_file":810,"_stem":811,"_extension":21},"/ja-jp/blog/getting-started-with-gitlab-working-with-ci-cd-variables",{"title":791,"description":792,"ogTitle":791,"ogDescription":792,"noIndex":6,"ogImage":793,"ogUrl":794,"ogSiteName":770,"ogType":771,"canonicalUrls":794,"schema":795},"GitLab入門：CI/CD変数を使用する","CI/CD変数の概要、DevSecOpsにおいてCI/CD変数が重要な理由、活用するためのベストプラクティスについてご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659525/Blog/Hero%20Images/blog-getting-started-with-gitlab-banner-0497-option4-fy25.png","https://about.gitlab.com/blog/getting-started-with-gitlab-working-with-ci-cd-variables","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab入門：CI/CD変数を使用する\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Team\"}],\n        \"datePublished\": \"2025-05-27\",\n      }",{"title":791,"description":792,"authors":797,"heroImage":793,"date":799,"body":800,"category":14,"tags":801},[798],"GitLab Team","2025-05-27","*「GitLab入門」シリーズへようこそ。このシリーズでは新たにGitLabを使い始める方向けに、GitLab\nDevSecOpsプラットフォームに慣れ親しむために役立つ内容をお届けします。*\n\n\n以前の記事で、[GitLab\nCI/CD](https://about.gitlab.com/blog/getting-started-with-gitlab-understanding-ci-cd/)について取り上げました。今回は**CI/CD変数**の世界をさらに深く掘り下げ、その力を最大限に引き出す方法について説明します。\n\n\n### CI/CD変数とは\n\n\nCI/CD変数とは、GitLab環境内においてさまざまなレベル（プロジェクト、グループ、インスタンスなど）で定義できる動的なキーと値のペアのことです。`.gitlab-ci.yml`ファイルで使用できる値のプレースホルダーとして機能するため、パイプラインをカスタマイズしたり、機密情報を安全に保存したりできるほか、CI/CD設定を管理しやすくなります。\n\n\n### CI/CD変数が重要な理由\n\n\nCI/CD変数の使用には、以下のような多くのメリットがあります。\n\n\n* **柔軟性** -\n主要なCI/CDスクリプトに手を加えることなく、さまざまな環境、設定、またはデプロイ対象にパイプラインを簡単に適応させられます。  \n * **セキュリティ** - API キー、パスワード、トークンのような機密情報を安全に保存して、コード内で直接公開されることのないようにします。  \n* **保守性** - 変数の値を一元化することで、CI/CDの設定がきれいに整理された状態に保たれるため、更新や修正作業を簡単に行えます。  \n\n* **再利用性** - 一度定義した変数は複数のプロジェクトで再利用できるため、重複が減り、一貫性を保ちやすくなります。\n\n\n### CI/CD変数のスコープ：プロジェクト、グループ、インスタンス\n\n\nGitLabでは、次のようなさまざまなスコープでCI/CD変数を定義し、その可視性と有効範囲を制御できます。\n\n\n* **プロジェクトレベルの変数** - 単一のプロジェクト専用の変数で、次のようなプロジェクト固有の設定を保存するのに適しています。\n  * デプロイURL：ステージング環境や本番環境向けのURLをそれぞれ定義します。  \n  * データベース認証情報：テストやデプロイ用のデータベース接続情報を保存します。  \n  * 機能フラグ：パイプラインのさまざまな段階で機能を有効または無効にします。  \n  * 例：\"MyWebApp\"というプロジェクトがあり、本番環境へのデプロイURLを保存したいとします。その場合、プロジェクトレベルで`DPROD_DEPLOY_URL`という名前の変数を作成し、`https://mywebapp.com`という値を格納します。  \n* **グループレベルの変数** -\nグループレベルの変数を作成すると、GitLabグループ内の全プロジェクトで共有されます。次のような複数のプロジェクトに共通する設定がある場合に便利です。\n\n  * 共有サービスのAPIキー：グループ内の複数のプロジェクトで使用されるサービス（AWS、Google Cloud、Docker Hubなど）のAPIキーを保存します。  \n  * グローバル構成設定：グループ内の全プロジェクトに適用される共通の設定パラメータを定義します。  \n  * 例：「Web Apps」というグループがあり、Docker Hub用にAPIキーを保存したいとします。その場合は、グループレベルで`DOCKER_HUB_API_KEY`という名前の変数を作成し、対応するAPIキーの値を格納します。  \n* **インスタンスレベルの変数** -\nGitLabインスタンスの全プロジェクトで利用可能な変数です。通常は、次のような組織全体に適用するグローバル設定がある場合に使用します。\n\n  * デフォルトのRunner登録トークン：新規[Runner](https://docs.gitlab.com/runner/)の登録時にデフォルトのトークンを提供します。  \n  * ライセンス情報：GitLabの機能やサードパーティツールのライセンスキー情報を保存します。  \n  * グローバル環境設定：全プロジェクトで利用可能な環境変数を定義します。  \n  * 例：GitLabインスタンス上の全プロジェクトにおいて、デフォルトのDockerイメージを設定したいとします。その場合、インスタンスレベルで`DEFAULT_DOCKER_IMAGE`という名前の変数を作成し、`ubuntu:latest`という値を格納します。\n\n### CI/CD変数を定義する\n\n\nCI/CD変数は以下の手順で定義できます。\n\n\n1. プロジェクト、グループ、またはインスタンスで、**設定 > CI/CD**ボタンの順にクリックします。  \n\n2. **変数**セクションに移動します。  \n\n3. **変数を追加**をクリックします。  \n\n4. **キー**（例：`API_KEY`）と**値**を入力します。  \n\n5.\n機密情報を扱う場合は、必要に応じて**変数を保護**ボックスをオンにします。オンにすると、保護ブランチまたは保護タグで実行されているパイプラインでのみ、変数が利用可能になります。  \n\n6. 必要に応じて、**変数をマスク**ボタンをオンにすると、ジョブログで変数の値が非表示になります。これにより、誤って公開されるのを防げます。  \n\n7. **変数を保存**をクリックします。\n\n\n### CI/CD変数を使用する\n\n\n`.gitlab-ci.yml`ファイルでCI/CD変数を使用する方法は簡単です。変数名の前にプレフィックスとして`$`を付けるだけです。\n\n\n```yaml\n\ndeploy_job:\n  script:\n    - echo \"Deploying to production...\"\n    - curl -H \"Authorization: Bearer $API_KEY\" https://api.example.com/deploy\n```\n\n\n### 定義済みのCI/CD変数\n\n\nGitLabでは、パイプラインでご利用いただけるように、[定義済みのCI/CD変数](https://docs.gitlab.com/ci/variables/predefined_variables/)を一式ご用意しています。これらの変数は、現在のパイプラインやジョブ、プロジェクトなどに関する情報を提供します。\n\n\nその中でも、使用されることの多い定義済み変数をいくつかご紹介します。\n\n\n* `$CI_COMMIT_SHA`：現在のパイプラインのコミットSHA。  \n\n* `$CI_PROJECT_DIR`：プロジェクトの複製先のディレクトリ。  \n\n* `$CI_PIPELINE_ID`：現在のパイプラインのID。  \n\n* `$CI_ENVIRONMENT_NAME`：デプロイ先の環境名（該当する場合）。\n\n\n### ベストプラクティス\n\n\n* 機密性の高い変数は安全に管理する：APIキーやパスワード、その他の機密情報を扱う場合は、保護およびマスクされた変数を使用しましょう。  \n\n* 値のハードコーディングは行わない：設定値を保存する際は変数を使用しましょう。そうすることで、パイプラインの柔軟性と保守性が高まります。  \n\n* 変数を整理する：変数をわかりやすい名前を付けて、関連する変数をまとめると、うまく整理できます。  \n\n* 適切なスコープを選ぶ：希望する変数の用途と可視性に基づいて、適切なスコープ（プロジェクト、グループ、またはインスタンス）を選びましょう。\n\n\n### 変数の力を最大限に活用する\n\n\nCI/CD変数は、GitLabパイプラインをカスタマイズし、保護するための強力なツールです。変数を使いこなし、各スコープを理解することで、より柔軟で保守しやすく、効率的なワークフローを作成できます。\n\n\n開発プロジェクトにおいて、GitLabの機能を活用していただくために必要な情報をお届けしました。ご紹介した情報がお役に立てば幸いです。\n\n\n> [Duo Enterpriseが搭載されたGitLab\nUltimateの無料トライアル](https://about.gitlab.com/ja-jp/free-trial/)に今すぐ申し込んで、CI/CD変数を早速ご利用ください。\n\n\n## 「GitLab入門」シリーズ\n\n「GitLab入門」シリーズのその他の記事もぜひご覧ください。\n\n\n-\n[ユーザーの管理方法](https://about.gitlab.com/ja-jp/blog/getting-started-with-gitlab-how-to-manage-users/)\n\n- \n[GitLabへのプロジェクトのインポート方法](https://about.gitlab.com/blog/getting-started-with-gitlab-how-to-import-your-projects-to-gitlab/)  \n\n-\n[プロジェクト管理を極める](https://about.gitlab.com/blog/getting-started-with-gitlab-mastering-project-management/)\n\n- [gitlab-triage\ngemを使ったアジャイルワークフローの自動化](https://about.gitlab.com/blog/automating-agile-workflows-with-the-gitlab-triage-gem/)\n\n-\n[CI/CDについて理解する](https://about.gitlab.com/blog/getting-started-with-gitlab-understanding-ci-cd/)\n",[14,802,803,804,110,805],"tutorial","CI","CD","features",{"slug":807,"featured":92,"template":679},"getting-started-with-gitlab-working-with-ci-cd-variables","content:ja-jp:blog:getting-started-with-gitlab-working-with-ci-cd-variables.yml","Getting Started With Gitlab Working With Ci Cd Variables","ja-jp/blog/getting-started-with-gitlab-working-with-ci-cd-variables.yml","ja-jp/blog/getting-started-with-gitlab-working-with-ci-cd-variables",{"_path":813,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":814,"content":820,"config":826,"_id":828,"_type":16,"title":829,"_source":18,"_file":830,"_stem":831,"_extension":21},"/ja-jp/blog/gitlab-18-0-release",{"ogTitle":815,"schema":816,"ogImage":817,"ogDescription":818,"ogSiteName":770,"noIndex":6,"ogType":771,"ogUrl":819,"title":815,"canonicalUrls":819,"description":818},"GitLab 18.0 リリース","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 18.0 リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2025-05-15\",\n      }","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662010/Blog/Hero%20Images/product-gl18-blog-release-cover-18-0-0750-1800x945-fy26.png","GitLab 18.0でリリースした最新機能をご紹介します。","https://about.gitlab.com/blog/gitlab-18-0-release",{"heroImage":817,"body":821,"authors":822,"updatedDate":823,"date":824,"title":815,"tags":825,"description":818,"category":14},"本ブログは、[GitLab 18.0 Release](https://about.gitlab.com/releases/2025/05/15/gitlab-18-0-released/)の抄訳です。内容に相違がある場合は、原文が優先されます。\n\n## GitLab 18.0をリリース：GitLab DuoがPremiumとUltimateで利用可能に\n\nこのたび、GitLab 18.0のリリースを発表しました。このリリースでは、GitLab PremiumとGitLab UltimateにGitLab Duoが搭載され、GitLab Duoコードレビューによる自動レビュー、コンテキストをより考慮したコードレビュー、GitLab Duo Self-Hostedで利用可能なリポジトリX-Rayなど、さまざまな新機能が追加されました。  \n\nこれらの機能は、今回のリリースに含まれる30件以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLab 18.0には、GitLabコミュニティのユーザーから328件ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。\n\nGitLab 18の新機能を活用することで、開発からリリースまでの全工程でAIの力を活用しつつ、開発者のスピードを落とさずにセキュリティを強化できます。これらがすべて、一つのプラットフォームで実現します。新機能については、[GitLab 18のオンラインリリースイベント「The next step in intelligent DevSecOps（知的進化する次世代のDevSecOps）」](https://about.gitlab.com/eighteen/)で詳しくご紹介いたします。ご参加をお待ちしています。\n\n来月のリリースで予定されている内容を先取りするには、[今後のリリースページ](https://about.gitlab.com/upcoming-releases/)をご覧ください。\n\n[GitLab 18.0では、PremiumおよびUltimate向けのGitLab Duoが追加されました。 クリックしてSNSで共有しましょう！](http://twitter.com/share?text=GitLab+18.0%E3%81%AE%E3%83%AA%E3%83%AA%E3%83%BC%E3%82%B9%E3%81%A7%E3%81%AF%E3%80%81Premium%E3%81%8A%E3%82%88%E3%81%B3Ultimate%E5%90%91%E3%81%91%E3%81%AEGitLab+Duo%E3%81%8C%E8%BF%BD%E5%8A%A0%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82&url=https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/&hashtags=)\n\n## 今月の[注目コントリビューター](https://contributors.gitlab.com/docs/notable-contributors)は[Michael Hofer](https://gitlab.com/karras)さんです\n\n\u003Cimg src=\"https://about.gitlab.com/images/notable-contributor-logo.svg\">\n\nトップコントリビューターであり、コミュニティリーダーでもあるMichael Hoferさんは、GitLabの[オープンソース](https://about.gitlab.com/ja-jp/blog/what-is-open-source/)ミッションを推進しています。今年だけで[50件以上のコントリビュート](https://contributors.gitlab.com/users/karras?fromDate=2025-01-01&toDate=2025-05-12)を行い、その活動はOpenBaoに基づくGitLabのGeo機能やシークレットマネージャーの強化に大きく貢献しました。また、[4月のハッカソン](https://contributors.gitlab.com/hackathon?hackathonName=2025_04)ではトップの成績を収め、他のコントリビューターを支援しながらコミュニティプロジェクトも率いています。\n\n「GitLabには誰もがコントリビュートできる環境があるので、とても感謝しています！」とMichaelさんは言います。「素晴らしいチームで、一緒に取り組んでいてとても楽しいです。特に、OpenBaoやSLSAのような[オープンソース](https://about.gitlab.com/ja-jp/blog/what-is-open-source/)イニシアチブで協力する際は、みんな本当に頼りになります。」\n\nMichaelさんは、ミッションクリティカルな[オープンソース](https://about.gitlab.com/ja-jp/blog/what-is-open-source/)ワークロードの計画、構築、運用に特化した国際的なITサービスプロバイダーである[Adfinis社](https://adfinis.com/en/)のCTOを務めています。Michaelさんは、組織間での協力を促進し、[オープンソース](https://about.gitlab.com/ja-jp/blog/what-is-open-source/)ソリューションの普及に情熱を注いでいます。\n\n最近、Adfinis社はGitLabの[共同開発プログラム](https://about.gitlab.com/community/co-create/)に参加しました。このプログラムでは、組織がGitLabの製品チームおよびエンジニアリングチームと協力して、GitLabの構築に取り組んでいます。「共同開発プログラムを、すべての組織に強くお勧めしたいです」とMichaelさんは話します。「PodmanのルートレスビルドやGlimmerの構文ハイライトに加え、その他多くの素晴らしいコントリビュートを生み出しました。」\n\nGitLabのエンジニアリングマネージャーであり、今回Michaelさんを推薦した[Lucie Zhao](https://gitlab.com/luciezhao)は次のように話します。「GeoチームはMichaelさんとの共同作業に大きなやりがいと楽しみを感じています。Michaelさんは、ここ数件のマイルストーンでの素晴らしいコントリビュートにより、チーム内で最も知られたコミュニティコントリビューターとなりました。」\n\nGitLabチームメンバーの[Lee Tickett](https://gitlab.com/leetickett-gitlab)、[Chloe Fons](https://gitlab.com/c_fons)、[Alex Scheel](https://gitlab.com/cipherboy-gitlab)も、Michaelさんの推薦を支持しました。Alexは次のように述べています。「MichaelさんのOpenBaoでのリーダーシップにより、お客様向けのシークレット管理ソリューションを効果的に共同開発することができました。また、透明性も確保され、GitLabの価値観に沿って進められました。」\n\nGitLabの共同開発に取り組んでくださっているMichaelさんとAdfinisチームのみなさま、ありがとうございます！\n\u003Cbr>\n\u003Cbr>\n\u003Cbr>\n\n## GitLab 18.0でリリースされた主な改善点\n\n### GitLab DuoがGitLab PremiumおよびGitLab Ultimateで利用可能に\n\n> SaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\\\n> Self-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise  \n\nこのリリースから、GitLab PremiumとGitLab UltimateでGitLab Duoが利用可能になりました。両プランにAI機能が標準搭載されます。\n\nGitLabのAIネイティブ機能には、IDE内のコード提案とチャット機能があります。開発チームは、これらの機能を使用して次の作業を効率化できます。\n\n* コードを分析し、理解し、説明する\n* より迅速に安全なコードを記述する\n* コード品質を維持するためのテストを素早く生成する\n* パフォーマンス向上や特定のライブラリの利用に合わせてコードを簡単にリファクタリングする\n\n[ドキュメント](https://docs.gitlab.com/user/gitlab_duo/#summary-of-gitlab-duo-features)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/538857)  \n\n\u003Cimg src=\"https://about.gitlab.com/images/18_0/Premium_Duo.png\">\n\n### GitLab Duo Self-HostedでリポジトリX-Rayが利用可能に\n\n> SaaS: - \u003Cbr>\n> Self-Managed: Premium、Ultimate、Duo Enterprise\n\nGitLab Duo Self-Hostedで、コード提案と併せてリポジトリX-Rayを使用できるようになりました。この機能は、GitLab Duo Self-Hostedではベータ版として提供され、GitLab Self-Managedインスタンスでは一般提供されています。\n\n[ドキュメント](https://docs.gitlab.com/user/project/repository/code_suggestions/repository_xray/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/17756)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/eclipse-beta.png\">\n\n### GitLab Duoコードレビューによる自動レビュー\n\n> SaaS: Premium、Ultimate、Duo Enterprise\u003Cbr>\n> Self-Managed: Premium、Ultimate、Duo Enterprise\n\nDuoコードレビューは、コードレビューのプロセスで効果的なフィードバックを提供しますが、これまでは各マージリクエストごとに手動でレビューをリクエストする必要がありました。\n\n今回、プロジェクトのマージリクエスト設定を変更することで、Duoコードレビューを自動的に実行できるようになりました。自動レビュー機能を有効にすると、以下の場合を除き、すべてのマージリクエストに対してDuoコードレビューが自動でレビューを行います。\n\n* マージリクエストがドラフトとしてマークされている場合  \n* マージリクエストに変更が含まれていない場合\n\n自動レビュー機能により、プロジェクト内のすべてのコードが確実にレビューされ、コードベース全体のコード品質が継続的に改善されます。\n\n[ドキュメント](https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#automatic-reviews-from-gitlab-duo)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/506537)\n\n\u003Cimg src=\"https://about.gitlab.com/images/18_0/create-auto-dcr.png\">\n\n### コード提案にプロンプトキャッシュを導入\n\n> SaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\\\n> Self-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise  \n\nコード提案にプロンプトキャッシュ機能が追加されました。この機能により、キャッシュされたプロンプトや入力データの再処理が不要になるため、コード補完の待機時間が大幅に短縮されます。キャッシュデータは永続ストレージに保存されることはなく、必要に応じてGitLab Duoの設定でプロンプトキャッシュを無効にすることも可能です。\n\n[ドキュメント](https://docs.gitlab.com/user/project/repository/code_suggestions/#prompt-caching)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/17489)\n\n\u003Cimg src=\"https://about.gitlab.com/images/18_0/prompt-cache.png\">\n\n### コンテキストをより考慮したコードレビュー\n\n> SaaS: Premium、Ultimate、Duo Enterprise\u003Cbr>\n> Self-Managed: Premium、Ultimate、Duo Enterprise\n\nコードレビューがより広範なコンテキスト情報を活用できるようになり、分析結果の精度が向上しました。主な改善点は以下のとおりです。\n\n* マージリクエストのタイトルと説明を含めることで、変更の目的をより正確に把握できるようになりました。  \n* すべての差分を一度に分析することで、ファイル間の関連性を認識し、誤検出を削減します。  \n* 変更されたファイル全体の内容を読み込み、修正が既存のコードパターンにどのように適合するかを理解できるようになりました。\n\nこれらの機能強化により、不正確な提案が減少し、より関連性が高く高品質なコードレビューが可能になりました。\n\n[ドキュメント](https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#have-gitlab-duo-review-your-code)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/466684)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/510266) \n\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/532653)\n\n\u003Cimg src=\"https://about.gitlab.com/images/18_0/create-dcr-improved-context.png\">\n\n## GitLab 18.0のリリースに含まれるその他の改善点\n\n### グループとプレースホルダーユーザーの削除\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLab 18.0では、トップレベルグループを削除すると、そのグループに関連付けられたプレースホルダーユーザーも同時に削除されるようになりました。プレースホルダーユーザーが他のプロジェクトに関連付けられている場合は、トップレベルグループからのみ削除され、他のプロジェクトには残ります。これにより、他のプロジェクトの履歴や属性を損なうことなく、不要なプレースホルダーユーザーを整理できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/project/import/#placeholder-user-deletion)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/473256)\n\n### Slackアプリ用GitLabで複数のワークスペースに対応\n\n> SaaS: -\u003Cbr>\n> Self-Managed: Free、Premium、Ultimate\n\nGitLab Self-ManagedおよびGitLab Dedicatedのお客様向けに、GitLab for Slackアプリで複数のワークスペースを利用できるようになりました。この機能により、複数のSlackワークスペースを持つ組織でも、すべてのワークスペースでGitLabとの連携をスムーズに維持できます。複数のワークスペースを有効にするには、GitLab for Slackアプリを[非公開配布アプリ](https://api.slack.com/distribution#unlisted-distributed-apps)として設定してください。\n\n[ドキュメント](https://docs.gitlab.com/administration/settings/slack_app/#enable-support-for-multiple-workspaces)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/424190)\n\n### GitLab Pagesテンプレートの改善\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLabでは、[人気の高い静的サイトジェネレーター用のテンプレート](https://gitlab.com/pages)を提供しています。スコアリングフレームワークでテンプレートを精査し、最も人気のあるものだけを厳選しました。\n\nGitLab Pagesで利用可能なテンプレートが改良されたことにより、ウェブサイト制作の工程がよりスムーズになりました。テンプレートを活用すれば、技術的な専門知識が限られていてもプロ並みのサイトを立ち上げることができます。改善されたテンプレートは最新のレスポンシブデザインに対応しており、カスタム開発作業の必要もありません。\n\n[ドキュメント](https://docs.gitlab.com/user/project/pages/getting_started/pages_new_project_template/#project-templates)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13847)\n\n### ワークスペースの共有Kubernetesネームスペース\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\n共有のKubernetesネームスペースにGitLabワークスペースを作成できるようになりました。これにより、ワークスペースごとに新しいネームスペースを作成する必要がなくなり、エージェントに上位のClusterRole権限を付与する必要もなくなります。この機能により、セキュリテイが厳しい環境または制約のある環境でもワークスペースをより容易に導入できるようになり、よりスムーズにスケールできるようになります。\n\n共有のネームスペースを有効にするには、エージェント設定ファイルの`shared_namespace`フィールドを設定し、すべてのワークスペースで使用したいKubernetesネームスペースを指定してください。\n\nこの機能は、[GitLabの共同開発プログラム](https://about.gitlab.com/community/co-create/)を通じて開発され、6人のコミュニティメンバーの協力によって実現しました。皆さまのコントリビュートに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/user/workspace/settings/#shared_namespace)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/12327)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/CXakdRuoGgU?si=indgAnCrTuIhUhcM\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### GitLab Runner 18.0\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLab Runner 18.0もリリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドのエージェントです。GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。\n\n新機能：\n\n* [GitLab Runnerビルドエラー分類に`ConfigurationError`と`ExitCodeInvalidConfiguration`を新たに追加](https://gitlab.com/gitlab-org/gitlab/-/issues/514297)  \n* [Cloud Storageへのキャッシュアップロードに失敗した場合に、よりわかりやすいクラウドプロバイダーエラーメッセージを表示するよう改善](https://gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/5527)\n\nバグ修正：\n\n* [GitLab Runnerが、許可されていない場合でもキャッシュされたイメージを使用できてしまう](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38706)\n\nすべての変更の一覧は、GitLab Runnerの[変更履歴](https://gitlab.com/gitlab-org/gitlab-runner/blob/18-0-stable/CHANGELOG.md)で確認できます。\n\n[ドキュメント](https://docs.gitlab.com/runner/)\n\n### Kubernetes用ダッシュボードのポッド状態表示を改善\n\n> SaaS: Free、Premium、Ultimate\u003Cbr>\n> Self-Managed: Free、Premium、Ultimate\n\nKubernetes用のダッシュボードを使用すると、デプロイされたアプリケーションをモニタリングできます。これまで`CrashLoopBackOff`や`ImagePullBackOff`などのコンテナエラーがあるポッドは「保留中」または「実行中」というステータスで表示されていたため、`kubectl`を使用せずに問題のあるデプロイメントを特定するのが困難でした。\n\nGitLab 18.0からは、UI上のエラー表示が`kubectl`出力と同様に、特定のコンテナのステータスを示すようになりました。これにより、GitLabインターフェイスだけで失敗したポッドをすばやく特定し、トラブルシューティングを行えるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ci/environments/kubernetes_dashboard/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/525081)\n\n\u003Cimg src=\"https://about.gitlab.com/images/18_0/deploy-improve-pod-status-visualizations.png\">\n\n### セキュリティスキャナーがMRパイプラインに対応\n\nSaaS: Free、Premium、Ultimate\\\nSelf-Managed: Free、Premium、Ultimate\n\n[マージリクエスト（MR）パイプライン](https://docs.gitlab.com/ci/pipelines/merge_request_pipelines/)で[アプリケーションセキュリティテスト（AST）スキャナー](https://docs.gitlab.com/user/application_security/detect/)を実行できるようになりました。パイプラインへの影響を最小限に抑えるため、この機能はオプトインで制御可能です。\n\nこれまでは、スキャナーを有効にする際に使用する[CI/CDテンプレートのエディション（StableかLatest）](https://docs.gitlab.com/user/application_security/detect/roll_out_security_scanning/#template-editions)によって、デフォルトの動作が異なっていました。\n\n* Stableのテンプレートでは、スキャンジョブはブランチパイプラインでのみ実行され、MRパイプラインでは実行されませんでした。  \n* Latestのテンプレートでは、MRが開いている場合はMRパイプラインでスキャンジョブが実行され、関連するMRがない場合はブランチパイプラインで実行されており、この動作を制御することはできませんでした。\n\n今回、新しいオプションとして`AST_ENABLE_MR_PIPELINESが追加され`、MRパイプラインでジョブを実行するかどうかを制御できるようになりました。StableテンプレートとLatestテンプレートのデフォルトの動作は変わりません。\n\n具体例：\n\n* Stableテンプレートでは引き続き、デフォルトでブランチパイプラインでスキャンジョブを実行しますが、`AST_ENABLE_MR_PIPELINES: \"true\"`を設定すると、MRが開いている場合にMRパイプラインを使用できます。  \n* Latestテンプレートでは引き続き、MRが開いている場合はデフォルトでMRパイプラインでスキャンジョブを実行しますが、`AST_ENABLE_MR_PIPELINES: \"false\"`を設定すると、代わりにブランチパイプラインを使用できます。\n\n今回の改善は、API Discovery（`API-Discovery.gitlab-ci.yml`）を除くすべてのセキュリティスキャンテンプレートに適用されます。API Discoveryは現在、MRパイプラインがデフォルトですが、GitLab 18.0では他のStableテンプレートと同様に、デフォルトでブランチパイプラインを使用するように変更されました。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/detect/roll_out_security_scanning/#use-security-scanning-tools-with-merge-request-pipelines)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/410880)\n\n### JiraインテグレーションAPIを使用して脆弱性からJiraのイシューを作成する設定が可能に\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nこれまでは、[脆弱性からJiraのイシューを作成](https://docs.gitlab.com/integration/jira/configure/#create-a-jira-issue-for-a-vulnerability)する設定は、プロジェクト設定ページからしか行えませんでした。\n\n今回の更新により、プロジェクト統合APIからも設定できるようになり、セットアップの自動化が可能になりました。\n\n[ドキュメント](https://docs.gitlab.com/api/project_integrations/#jira-issues)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/454574)\n\n### 再検出された脆弱性のトレーサビリティの向上\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nこれまで、解決済みの脆弱性が再検出されてステータスが変更された場合、脆弱性の詳細にはいつ、なぜステータスが変更されたかを示す情報が含まれていませんでした。\n\n解決済みの脆弱性が新しいスキャンで再び検出されてステータスが変更された場合、GitLabはその脆弱性の履歴にシステムメモを自動的に追加するようになりました。これにより、ユーザーは脆弱性のステータスが変更された経緯を明確に把握できるようになります。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/vulnerabilities/#vulnerability-status-values)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/523452)\n\n### コンプライアンスプロジェクトレポートでアーカイブされたプロジェクトの表示とフィルタリングが可能に\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nコンプライアンスプロジェクトレポートでは、グループまたはサブグループ内の各プロジェクトに適用されているコンプライアンスフレームワークを確認することができます。\n\nただし、これまでのレポートでは、プロジェクトがアーカイブされているかどうかを表示する機能がなく、アクティブなプロジェクトとアーカイブ済みプロジェクトの両方のコンプライアンス管理に必要な情報が十分ではありませんでした。\n\nそこで今回、プロジェクトがアーカイブされているかどうかを示すインジケータが追加されました。これにより、コンプライアンスフレームワークを確認する際に、プロジェクトがアクティブかアーカイブ済みかを問わず、コンプライアンス状況をより明確に把握できるようになりました。\n\nこの機能には以下が含まれます。\n\n* コンプライアンスプロジェクトレポートの各プロジェクトに、アーカイブ済みかどうかを示すステータスバッジを表示  \n* アーカイブ済み、アーカイブされていない、すべてのプロジェクトを切り替えるフィルター\n\n[ドキュメント](https://docs.gitlab.com/user/compliance/compliance_center/compliance_projects_report/#filter-the-compliance-projects-report)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/500520)\n\n### GitLabユーザー名を使用したLDAP認証\n\n> SaaS: -\u003Cbr>\n> Self-Managed: Premium、Ultimate\n\nLDAPユーザーは、GitLabユーザー名を使用してリクエストを認証できるようになりました。これまでは、GitLabユーザー名がLDAPユーザー名と一致しない場合、GitLabは認証エラーを返していました。今回の変更により、承認ワークフローに影響を与えることなく、GitLabシステムとLDAPシステムで異なるユーザー名の命名規則を採用できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/administration/auth/ldap/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/215357)\n\n### カスタムロールの新しい権限\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\n[保護環境を管理](https://gitlab.com/gitlab-org/gitlab/-/issues/471385)する権限をカスタムロールに設定できるようになりました。カスタムロールを使用すれば、ユーザーに対して、タスクの完了に必要な特定の権限のみを付与できます。これによりグループのニーズに合わせてロールを定義できるため、オーナーまたはメンテナーロールが必要なユーザー数を減らすことができます。\n\n[ドキュメント](https://docs.gitlab.com/user/custom_roles/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14746)\n\n### ユーザーネームスペースのプロジェクトにも削除保留機能を追加\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nユーザーネームスペース（個人プロジェクト）のプロジェクトでも、プロジェクト削除保留機能が利用できるようになりました。誤削除からデータを守るこの安全機能は、これまではグループプロジェクトでしか利用できませんでした。今回の更新により、ユーザーネームスペースでプロジェクトを削除しても、すぐに完全に削除されるのではなく、インスタンスの設定期間（GitLab.comでは7日間）は「削除保留中」の状態になります。これにより、期間内であれば、必要に応じてプロジェクトを元に戻すことが可能になりました。\n\nユーザーの皆さまがより安心して個人プロジェクトを管理できるよう設計された保護機能です。\n\n[ドキュメント](https://docs.gitlab.com/user/project/working_with_projects/#delayed-project-deletion)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/536244)\n\n### 破壊的な変更を伴うGitLabチャート9.0のリリース\n\n> SaaS: -\u003Cbr>\n> Self-Managed: Free、Premium、Ultimate\n\n* [破壊的な変更](https://docs.gitlab.com/update/deprecations/#postgresql-14-and-15-no-longer-supported)：PostgreSQL 14と15のサポートが削除されました。GitLabチャート9.0にアップグレードする前に、PostgreSQL 16にアップグレードされていることを確認してください。  \n* [破壊的な変更](https://docs.gitlab.com/update/deprecations/#major-update-of-the-prometheus-subchart)：バンドルのPrometheusチャートが15.3から27.11に更新されました。Prometheusチャートのアップグレードに伴い、Prometheusバージョンも2.38から3.0に更新されました。このアップグレードを実行するには、手動での設定が必要です。Alertmanager、Node Exporter、Pushgatewayのいずれかが有効になっている場合は、Helm値も更新する必要があります。詳細については、[移行ガイド](https://docs.gitlab.com/charts/releases/9_0/#prometheus-upgrade)を参照してください。  \n* [破壊的な変更](https://docs.gitlab.com/update/deprecations/#fallback-support-for-gitlab-nginx-chart-controller-image-v131)：デフォルトのNGINXコントローラーイメージがバージョン1.3.1から1.11.2に更新されました。GitLab NGINXチャートを使用し、独自のNGINX用RBACルールを設定している場合は、新しいRBACルールが必要となります。詳細については、[アップグレードガイド](https://docs.gitlab.com/charts/releases/8_0/#upgrade-to-86x-851-843-836)を参照してください。\n\n[ドキュメント](https://docs.gitlab.com/charts/releases/9_0/)\\\n[イシュー](https://gitlab.com/gitlab-org/charts/gitlab/-/issues/5927)\n\n### GitLab Dedicated向けに内部リリース機能を提供開始\n\n> SaaS: -\u003Cbr>\n> Self-Managed: Ultimate\n\nGitLab Dedicatedを選択される組織の多くは、厳格なセキュリティ要件やコンプライアンス義務を満たすために、開発環境における最高レベルの保護を必要としています。このたび、「内部リリース」という新しいプライベートリリース機能の提供を開始しました。致命的な脆弱性が一般に公開される前にGitLab Dedicatedインスタンスに修正を適用できるようになり、GitLab Dedicatedのお客様をリスクから保護します。この新機能は、GitLab.comでの対応と並行し、GitLabで発見された致命的な脆弱性に対して即時の保護を提供するものです。この新しいプロセスは、お客様側での操作は必要ありません。\n\n[ドキュメント](https://handbook.gitlab.com/handbook/engineering/releases/internal-releases/)\\\n[エピック](https://gitlab.com/groups/gitlab-com/gl-infra/-/epics/1201)\n\n### グループとプロジェクトのREST APIに新しい`アクティブ`パラメータを追加\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nグループとプロジェクトのREST APIに新しい`アクティブ`パラメータが追加されました。これにより、ステータスに基づいたグループのフィルタリングが簡素化されます。`true`に設定すると、アーカイブされていないグループ、または削除マークが付いていないプロジェクトのみが返されます。`false`に設定すると、アーカイブされたグループ、または削除マークが付いているプロジェクトのみが返されます。パラメータを指定しない場合、フィルタリングは適用されません。この機能強化により、簡単なAPIコールで特定のステータスを持つグループやプロジェクトだけを選び出せるようになり、作業プロセス全体をより効率的に管理できるようになります。\n\nこのパラメータをプロジェクトAPIに追加してくれた[@dagaranupam](https://gitlab.com/dagaranupam)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/api/projects/#list-projects)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/526206)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/526205)\n\n### GitLab.comでのコントリビュートの再アサイン時にEnterpriseユーザーのみを表示\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\n今回のリリースでは、プレースホルダーユーザーマッピング体験を向上させました。具体的には、ユーザー選択ドロップダウンの表示範囲を、トップレベルグループに関連付けられた[Enterpriseユーザー](https://docs.gitlab.com/user/enterprise_user/)に絞り込むように改善しました。これまで、GitLab.comへのインポート後にユーザーのコントリビュートを再アサインすると、プラットフォーム上のすべてのアクティブユーザーがドロップダウンリストに表示されていました。この仕様では、特にSCIMプロビジョニングでユーザー名が変更されている場合などは、正しいユーザーを特定するのが困難でした。今回の変更により、トップレベルグループでEnterpriseユーザー機能が有効になっている場合、ドロップダウンリストには組織が要求したユーザーのみが表示されるようになり、ユーザーの再アサイン時に発生するエラーの可能性が大幅に低減されます。同様の絞り込みがCSVベースの再アサインにも適用されるため、組織外のユーザーへの誤ったアサインを防ぐことができます。\n\n[ドキュメント](https://docs.gitlab.com/user/group/import/direct_transfer_migrations/#user-contribution-and-membership-mapping)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/510673)\n\n### GitLabクエリ言語ビューの機能強化\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nGitLabクエリ言語（GLQL）ビューが大幅に改善されました。新しく追加された機能は以下のとおりです。\n\n* すべての日付型で`>=`および`\u003C=`の条件指定が可能に  \n* ビューの「ビューアクション」ドロップダウンが追加  \n* 「**再読み込み**」アクションが利用可能に  \n* フィールドエイリアス対応  \n* GLQLテーブルの列でカスタム名にエイリアス設定が可能に\n\nこの機能強化およびGLQLビュー全般に関するフィードバックは、[イシュー509791](https://gitlab.com/gitlab-org/gitlab/-/issues/509791)からお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/user/glql/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15008)\n\n### マージリクエストからワークスペースを作成\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\n新しい「**ワークスペースで開く**」オプションを使用して、マージリクエストから直接ワークスペースを作成できるようになりました。この機能は、マージリクエストのブランチとコンテキストを使用してワークスペースを自動的に構成し、以下のことを可能にするものです。\n\n* 完全に設定された環境でコード変更をレビュー  \n* マージリクエストブランチでテストを実行し、機能を検証  \n* ローカル環境の設定なしでマージリクエストに修正を追加\n\n[ドキュメント](https://docs.gitlab.com/user/workspace/configuration/#create-a-workspace)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/426568)\n\n### ファイルをターゲットとするオープンマージリクエストの表示\n\n> SaaS: Free、Premium、Ultimate\u003Cbr> \n> Self-Managed: Free、Premium、Ultimate\n>\n> これまでは、コードファイルを編集する際に、他のブランチで同じファイルを変更している可能性のあるユーザーの動向を把握することはできませんでした。このため、マージの競合や作業の重複、非効率的なコラボレーションが生じていました。\n\n今回の変更により、リポジトリで表示しているファイルを変更しているすべてのオープンマージリクエストを簡単に特定できるようになりました。この機能は次のような場面で役立ちます。\n\n* マージコンフリクトを事前に特定する  \n* すでに進行中の作業の重複を回避する  \n* 進行中の変更を可視化してコラボレーションを強化する\n\nファイルを変更しているオープンマージリクエストの数がバッジに表示され、その上にカーソルを合わせると、該当するマージリクエストのリストがポップオーバーで表示されます。\n\n[ドキュメント](https://docs.gitlab.com/user/project/repository/files/#view-open-merge-requests-for-a-file)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/448868)\n\n\u003Cimg src=\"https://about.gitlab.com/images/18_0/mr-open-workspace.png\">\n\n### 新しい「CI/CDの分析」表示機能の限定提供を開始\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\n「CI/CDの分析」のデザインが改良され、開発チームがパイプラインのパフォーマンスと信頼性を新しい方法で分析、監視、最適化できるようになりました。デベロッパーは、GitLabの操作画面に表示される直感的なグラフによってパフォーマンスの傾向や信頼性に関するメトリクスを確認できます。これらの分析情報をプロジェクトリポジトリに埋め込むことで、デベロッパーの作業の流れを中断させる頭の切り替えが不要になります。そして、チームは、生産性を低下させるパイプラインのボトルネックを特定して対処することができます。この機能強化により、開発サイクルの高速化、コラボレーションの向上が実現されるだけでなく、具体的な分析結果に基づき、GitLabのCI/CD環境を最適化するための信頼できる材料を得ることができます。\n\n[ドキュメント](https://docs.gitlab.com/user/analytics/ci_cd_analytics/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/444468)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/78Nxbem9OAk?si=KTKVK7EsiW9E4Zxm\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### イベントデータ収集\n\n> SaaS: -\u003Cbr>\n> Self-Managed: Free、Premium、Ultimate\n\nGitLab 18.0では、GitLab Self-ManagedおよびGitLab Dedicatedインスタンスからイベントレベルの製品使用状況データの収集が有効にされます。集計データとは異なり、イベントレベルのデータは製品利用の実態をより正確に把握するための情報源となります。これにより、プラットフォーム上のユーザーエクスペリエンスを向上させ、機能の利用率を高めることができます。データ共有設定を調整する方法の詳細については、ドキュメントを参照してください。\n\n[ドキュメント](https://docs.gitlab.com/administration/settings/event_data/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/510333)\n\n### 脆弱性レポートからイシューへ脆弱性を一括追加\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\n今回リリースでは、脆弱性レポートから新規または既存のGitLabイシューに複数の脆弱性を一括追加できるようになりました。これにより、複数のイシューと脆弱性を関連付けることが可能になります。さらに、関連する脆弱性がイシューページに表示されるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/vulnerability_report/#add-vulnerabilities-to-an-existing-issue)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13216)\n\n### ライセンス承認ルールからパッケージを除外\n\n> SaaS: Ultimate\\\n> Self-Managed: Ultimate\n\nマージリクエスト承認ポリシーに追加されたライセンス承認ポリシーの新機能により、法務チームやコンプライアンスチームは、特定のライセンスを使用できるパッケージをより細かく制御できるようになりました。これにより、組織のポリシーによって通常ブロックされるライセンスを使用している場合でも、事前に承認されたパッケージの例外を作成できるようになります。\n\nこれまでのライセンス承認ポリシーでは、AGPL-3.0などのライセンスをブロックした場合、組織内のすべてのパッケージでそのライセンスがブロックされていました。これにより、次のような場面で問題が発生していました。\n\n* 法務チームが、通常は制限されているライセンスであっても特定のパッケージを事前に承認している場合  \n* 数百件ものプロジェクトで同じパッケージを使用する必要がある場合  \n* チームごとに異なるライセンスの例外が必要な場合\n\n今回のリリースでは、厳格なライセンスガバナンスを維持しつつ必要な例外を許可できるようになり、承認のボトルネックや手作業でのレビューを大幅に削減できます。たとえば、以下のような設定が可能です。\n\n* パッケージURL（PURL）形式を使用して、ライセンス承認ルールにパッケージ固有の例外を定義  \n* 通常は制限されているライセンスでも、特定のパッケージ（またはパッケージのバージョン）に限って使用を許可  \n* 特定のパッケージ（またはパッケージのバージョン）に対し、一般的に許可されているライセンスの使用をブロック\n\n例外を追加するには、ライセンス承認ポリシーの作成または編集時に次のワークフローに従ってください。\n\n1. グループで**セキュリティ** > **ポリシー**に移動します。  \n2. ライセンス承認ポリシーを作成または編集します。  \n3. ビジュアルエディタで新しいパッケージ例外オプションを見つけるか、YAMLモードで構成します。  \n4. ライセンスに対して、許可リストまたは拒否リストを選択します。  \n5. ポリシーに特定のライセンスを追加します。\n6. ライセンスごとにPURL形式でパッケージ例外を定義します。\n\n例：`pkg:npm/@angular/animation@12.3.1`\n\n7. ライセンスルールにこれらのパッケージを含めるか除外するかを指定します。\n\nこれらの設定後は、ポリシーが定義された例外を適切に処理しながらライセンスルールを適用するため、組織全体でライセンスコンプライアンスをきめ細かく制御できるようになります。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/policies/merge_request_approval_policies/#license_finding-rule-type)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/10203)\n\n\u003Cimg src=\"https://about.gitlab.com/images/18_0/license-exceptions-mr-approval-policy.png\">\n\n### ユーザー招待機能の無効化\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nグループやプロジェクトにメンバーを招待する機能を制限できるようになりました。\n\n* GitLab.comでは、Enterpriseユーザーを持つグループのオーナーがこの制限を設定でき、設定はトップレベルグループ内のサブグループやプロジェクトに適用されます。この招待制限が設定されると、どのユーザーも新しいメンバーを招待することはできません。  \n* GitLab Self-Managedの場合、この制限設定は管理者によって行われ、インスタンス全体に適用されます。その後も、管理者は引き続きユーザーを直接招待できます。\n\nこの機能は、組織がメンバーシップアクセスを厳格に管理したい場合に便利です。\n\n[ドキュメント](https://docs.gitlab.com/administration/settings/visibility_and_access_controls/#disable-user-invitations)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/19618)\n\n\u003Cimg src=\"https://about.gitlab.com/images/18_0/disable_invitations.png\">\n\n### ジョブトークンのきめ細かい権限管理がベータ版として登場\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nパイプラインセキュリティがさらに柔軟になりました。ジョブトークンはパイプライン内でリソースにアクセスするための一時的な認証情報です。トークンはこれまで、ユーザーから完全な権限を継承していたため、不必要に広範なアクセスが付与される事態が数多く発生していました。\n\n新しく追加された[ジョブトークンのきめ細かい権限](https://docs.gitlab.com/ci/jobs/fine_grained_permissions/)ベータ機能により、プロジェクト内でジョブトークンがアクセスできる特定のリソースを正確に制御できるようになりました。これにより、CI/CDワークフローで最小権限の原則を実装し、各ジョブに対してタスクの実行に必要な最小アクセス権のみを設定できるようになります。\n\nこの機能について、コミュニティからのフィードバックをぜひお寄せください。ご質問や実装経験の共有、改善点に関して当社チームへのご意見がある場合は、[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/519575)をご確認ください。\n\n[ドキュメント](https://docs.gitlab.com/ci/jobs/fine_grained_permissions/)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16199)\n\n\u003Cimg src=\"https://about.gitlab.com/images/18_0/sscs-authz-fine-grained-job-tokens.png\">\n\n### ユーザーセッション最大長の制限\n\n> SaaS: -\u003Cbr>\n> Self-Managed: Free、Premium、Ultimate\n\n管理者は、ユーザーセッションの最大有効期間を「最初のサインイン」から計算するか、または「最後のアクティビティー」から計算するかを選択できるになりました。ユーザーにはセッションが終了することが通知されますが、セッションの有効期限を変更したり、セッションを延長したりすることはできません。この機能はデフォルトで無効になっています。\n\nこの場を借りて、コントリビュートしてくれた[John Parent](https://gitlab.kitware.com/john.parent)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/administration/settings/account_and_limit_settings/#set-sessions-to-expire-from-creation-date)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/395038)\n\n### SAML証明書のSHA256サポート\n\n> SaaS: Premium、Ultimate\\\n> Self-Managed: Premium、Ultimate\n\nGitLabは、グループSAML認証におけるSHA1およびSHA256の証明書フィンガープリントを自動的に検出し、サポートするようになりました。これにより、既存のSHA1フィンガープリントとの下位互換性が維持されるほか、より安全なSHA256フィンガープリントのサポートが追加されます。今回のアップグレードは、SHA256をデフォルト設定とする次世代ruby-saml 2.xに対応するための必須の対応となります。\n\n[ドキュメント](https://docs.gitlab.com/integration/saml/)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/524624)\n\n### すべてのユーザーが利用できる削除保留機能\n\n> SaaS: Free、Premium、Ultimate\\\n> Self-Managed: Free、Premium、Ultimate\n\nプロジェクトとグループの削除保留機能が、Freeプランを含むすべてのGitLabユーザーに提供されるようになりました。この重要なセキュリティ機能は、削除されたグループやプロジェクトが完全に削除される前に、猶予期間（GitLab.comでは7日間）を設けるものです。この機能により、誤って削除した場合でも複雑な手順を踏まずに簡単に復元できるようになります。\n\nデータ保護を基盤機能として組み込むことで、大切なデータを消失リスクから守ります。\n\n[ドキュメント](https://docs.gitlab.com/administration/settings/visibility_and_access_controls/#deletion-protection)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/526405)\\\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/17208)\n\n\u003Cimg src=\"https://about.gitlab.com/images/18_0/tenant_scale_deletion_protcection_all_tiers.png\">\n\n### グループ、プロジェクト、ユーザーAPIのレート制限\n\n> SaaS: Free、Premium、Ultimate\n> Self-Managed: -\n\nすべてのユーザーに対してプラットフォームの安定性とパフォーマンスを向上させることを目的として、プロジェクト、グループ、ユーザーごとにAPIレート制限を追加しました。今回の変更は、当社のサービスに影響を与えているAPI通信の増加に対応するものです。\n\nこの制限は平均的な使用パターンに基づいて慎重に設定されており、ほとんどのユースケースにおいて十分な容量を提供するよう設計されています。制限を超えると、「429 Too Many Requests」（リクエスト過多）という応答が返されます。\n\n特定のレート制限と実装情報の詳細については、[関連のブログ記事をご覧ください](https://about.gitlab.com/blog/rate-limitations-announced-for-projects-groups-and-users-apis/)。\n\n[ドキュメント](https://docs.gitlab.com/user/gitlab_com/#rate-limits-on-gitlabcom)\\\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/461316)\n\n\u003Cbr>\n\u003Cbr>\n\n## 実験的な機能\n\n### スケジュールされたパイプライン実行ポリシー\n\nこの実験的機能を有効にすると、カスタマイズされたCI/CDジョブやスクリプトを使い、定期スケジュールでパイプライン実行ポリシーをトリガーできます。主な特徴は以下のとおりです。\n\n* スケジュールされたパイプラインでは、コンプライアンススクリプト、GitLabまたはサードパーティ製のセキュリティスキャン、その他のカスタムCI/CDジョブを強制実行できます。  \n* セキュリティおよびコンプライアンス要件を確実に満たすためのツールとして、スケジュールされたパイプラインを実行して日次、週次、月次のスケジュールでジョブを実行することができます。  \n* スケジュールされたパイプラインは、プロジェクトの`.gitlab-ci.yml`ファイルにジョブをインジェクトしたり強制したりせず、ダウンストリームのプロジェクトパイプラインに影響を与えません。  \n* 代わりに、これらのパイプラインを使用して、デフォルトブランチを定期的に対象とし、依存関係やプロジェクト構成、その他の要件を確認するといったアクションを実行できます。\n\n実験を有効にするには`policy.yml`ファイルを作成するか、セキュリティポリシープロジェクトの既存の`policy.yml`ファイルを変更して`experiments`属性を追加します。有効にすると、パイプライン実行ポリシーを設定できるようになります。このポリシーには、パイプライン実行ポリシーが適用されているすべてのプロジェクトでカスタムCI/CDジョブを実行するスケジュールが含まれます。\n\nトリガーされるパイプライン実行ポリシーは複数作成できますが、セキュリティポリシープロジェクトごとに設定できるスケジュールされたパイプライン実行ポリシーは1件のみです。\n\n詳細については、[スケジュールされたパイプライン実行ポリシー](https://docs.gitlab.com/user/application_security/policies/scheduled_pipeline_execution_policies/)を参照してください。\n\n\u003Cbr>\n\u003Cbr>\n\n## バグ修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。\n\n18.0で提供されたすべてのバグ修正、パフォーマンスの強化、UI改善を確認するには、以下のリンクをクリックしてください。\n\n* [バグ修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=18.0)  \n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=18.0)  \n* [UIの改善](https://papercuts.gitlab.com/?milestone=18.0)\n\n\u003Cbr>\n\u003Cbr>\n\n## 非推奨事項\n\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n* [リソースオーナーパスワード認証方式を非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#resource-owner-password-credentials-grant-is-deprecated)\n* [cert-manager Helm チャートをアップデート](https://docs.gitlab.com/ee/update/deprecations.html#cert-manager-helm-chart-update)\n* [カバレッジガイド付きファズテストを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#coverage-guided-fuzz-testing-is-deprecated)\n\n\u003Cbr>\n\u003Cbr>\n\n## 削除された機能と破壊的な変更\n\n削除されたすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n* [APIディスカバリーはデフォルトでブランチパイプラインを使用するように](https://docs.gitlab.com/ee/update/deprecations.html#api-discovery-will-use-branch-pipelines-by-default)  \n* [アプリケーションセキュリティテスト（AST）アナライザーのメジャーバージョンをアップデート](https://docs.gitlab.com/ee/update/deprecations.html#application-security-testing-analyzers-major-version-update)  \n* [「今後」および「開始済み」マイルストーンフィルタの動作を変更](https://docs.gitlab.com/ee/update/deprecations.html#behavior-change-for-upcoming-and-started-milestone-filters)  \n* [CI/CDジョブトークン - 「認証されたグループとプロジェクト」許可リストの強制適用](https://docs.gitlab.com/ee/update/deprecations.html#cicd-job-token-authorized-groups-and-projects-allowlist-enforcement)  \n* [CI/CDジョブトークン - 「プロジェクトからのアクセス制限」設定を削除](https://docs.gitlab.com/ee/update/deprecations.html#cicd-job-token-limit-access-from-your-project-setting-removal)  \n* [DASTのdast_devtools_api_timeoutのデフォルト値引き下げ](https://docs.gitlab.com/ee/update/deprecations.html#dast-dast_devtools_api_timeout-will-have-a-lower-default-value)  \n* [依存関係プロキシトークンのスコープ強制](https://docs.gitlab.com/ee/update/deprecations.html#dependency-proxy-token-scope-enforcement)  \n* [Terraform CI/CD テンプレートを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#deprecate-terraform-cicd-templates)  \n* [ライセンスメタデータ形式 V1 を非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#deprecate-license-metadata-format-v1)  \n* [GraphQL APIのNamespaceProjectSortEnumにおけるSTORAGE列挙型を非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#deprecation-of-storage-enum-in-namespaceprojectsortenum-graphql-api)  \n* [GraphQL APIのProjectMonthlyUsageType におけるnameフィールドを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#deprecation-of-name-field-in-projectmonthlyusagetype-graphql-api)  \n* [GitLab NGINXチャートコントローラーイメージv1.3.1のフォールバックサポート](https://docs.gitlab.com/ee/update/deprecations.html#fallback-support-for-gitlab-nginx-chart-controller-image-v131)  \n* [Gitalyストレージを設定するためのgit_data_dirs](https://docs.gitlab.com/ee/update/deprecations.html#git_data_dirs-for-configuring-gitaly-storages)  \n* [従来のWeb IDEを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#legacy-web-ide-is-deprecated)  \n* [スキャン実行ポリシーごとに許可されるアクションの数を制限](https://docs.gitlab.com/ee/update/deprecations.html#limit-number-of-scan-execution-policy-actions-allowed-per-policy)  \n* [スキャン実行ポリシーにおけるscanアクションを制限](https://docs.gitlab.com/ee/update/deprecations.html#limited-scan-actions-in-a-scan-execution-policy)  \n* [Prometheusサブチャートのメジャーアップデート](https://docs.gitlab.com/ee/update/deprecations.html#major-update-of-the-prometheus-subchart)  \n* [GitLab.comでの脆弱性データ保持期間の新しい制限](https://docs.gitlab.com/ee/update/deprecations.html#new-data-retention-limits-for-vulnerabilities-on-gitlabcom)  \n* [PostgreSQL 14および15はサポートされなくなります](https://docs.gitlab.com/ee/update/deprecations.html#postgresql-14-and-15-no-longer-supported)  \n* [Raspberry Pi 32 ビットパッケージを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#raspberry-pi-32-bit-packages-are-deprecated)  \n* [allowed_pull_policies に含まれないコンテナイメージのプルポリシーを拒否](https://docs.gitlab.com/ee/update/deprecations.html#reject-container-image-pull-policies-not-in-allowed_pull_policies)  \n* [duoProAssignedUsersCount GraphQL フィールドを削除](https://docs.gitlab.com/ee/update/deprecations.html#remove-duoproassigneduserscount-graphql-field)  \n* [GraphQL フィールドadd_on_purchaseをadd_on_purchasesに置き換え](https://docs.gitlab.com/ee/update/deprecations.html#replace-add_on_purchase-graphql-field-with-add_on_purchases)  \n* ネームスペース[のGraphQL フィールドadd_on_purchaseをadd_on_purchasesに置き換え](https://docs.gitlab.com/ee/update/deprecations.html#replace-namespace-add_on_purchase-graphql-field-with-add_on_purchases)  \n* [SUSE Linux Enterprise Server 15 SP2をサポート](https://docs.gitlab.com/ee/update/deprecations.html#support-for-suse-linux-enterprise-server-15-sp2)  \n* [ciJobTokenScopeRemoveProjectのGraphQL 引数directionを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#the-direction-graphql-argument-for-cijobtokenscoperemoveproject-is-deprecated)  \n* [APIでの注釈の機密性切り替え](https://docs.gitlab.com/ee/update/deprecations.html#toggle-notes-confidentiality-on-apis)\n\n### 変更履歴\n\n変更内容をすべて表示するには、次のページから変更履歴を確認してください。\n\n* [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)  \n* [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)  \n* [VS CodeのGitLabワークフロー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)  \n* [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n### インストール\n\nGitLabを新規にインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/ja-jp/install/)をご覧ください。\n\n### 更新事項\n\n[更新ページ](https://about.gitlab.com/ja-jp/update/)をご覧ください。\n\n### ご不明な点がある場合\n\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスして質問を投稿してください。\n\n### GitLabサブスクリプションプラン\n\n* [Free](https://about.gitlab.com/pricing/)\\\n  ユーザー向けの永久無料機能を提供  \n* [Premium](https://about.gitlab.com/pricing/premium/)\\\n  チームの生産性と調整を強化  \n* [Ultimate](https://about.gitlab.com/pricing/ultimate/)\\\n  組織全体のセキュリティ、コンプライアンス、プランニングに対応\n\nGitLabのすべての機能を[無料トライアル](https://about.gitlab.com/ja-jp/free-trial/) でお試しいただけます。  \n\n\u003Cbr>\n\u003Cbr>\n\n*監修：ソリス ジェレズ / Jerez Solis [@jerezs](https://gitlab.com/jerezs)\u003Cbr>\n（GitLab合同会社 ソリューションアーキテクト本部 ソリューションアーキテクト）*\n\n### 過去の日本語リリース情報\n\n* [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n* [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n* [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n* [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)  \n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)  \n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)  \n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)  \n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)  \n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)",[676],"2025-05-19","2025-05-15",[672,671,14,110],{"slug":827,"featured":92,"template":679},"gitlab-18-0-release","content:ja-jp:blog:gitlab-18-0-release.yml","Gitlab 18 0 Release","ja-jp/blog/gitlab-18-0-release.yml","ja-jp/blog/gitlab-18-0-release",{"_path":833,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":834,"content":840,"config":845,"_id":847,"_type":16,"title":848,"_source":18,"_file":849,"_stem":850,"_extension":21},"/ja-jp/blog/gitlab-premium-with-duo",{"title":835,"description":836,"ogTitle":835,"ogDescription":836,"noIndex":6,"ogImage":837,"ogUrl":838,"ogSiteName":770,"ogType":771,"canonicalUrls":838,"schema":839},"GitLab PremiumおよびUltimateのすべてのユーザーにAIの恩恵を","このたび、GitLab PremiumおよびUltimateで「GitLab Duo」の基本機能を追加料金なしでご利用いただけるようになりました。この機能により、ソフトウェア開発ライフサイクル全体をとおしてコードの作成・理解を支援するAI機能をご活用いただけます。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749660188/Blog/Hero%20Images/blog-premium-with-duo-cover-0756-fy26-v2-1800x945.png","https://about.gitlab.com/blog/gitlab-premium-with-duo","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab PremiumおよびUltimateのすべてのユーザーにAIの恩恵を\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"David DeSanto, Chief Product Officer, GitLab\"}],\n        \"datePublished\": \"2025-05-15\",\n      }",{"title":835,"description":836,"authors":841,"heroImage":837,"date":824,"body":843,"category":14,"tags":844,"updatedDate":823},[842],"David DeSanto, Chief Product Officer, GitLab","GitLab 18.0をリリースしました。このリリースでは、DevSecOpsの中核となるワークフロー、セキュリティとコンプライアンスの向上、そしてAI技術における革新的な進化と未来像が凝縮されています。**本リリースに合わせて、GitLab PremiumおよびUltimateで、GitLab Duoの基本的なAI機能を追加料金なしでご利用いただけるようになりました。** PremiumおよびUltimateのお客様は全員、サポートされているソースコードエディタやIDEから直接、GitLab Duoコード提案とGitLab Duo Chatをすぐにご利用いただけます。\n\n## すべての開発チームにAIを\n\n人工知能（AI）は今や、デベロッパーエクスペリエンスの中核をなしています。AIは、コードベースの分析、入力中リアルタイムでの提案の提供、プロジェクトのコンテキストに基づいた関数やメソッドの作成、繰り返しの作業の軽減、コードレビューの自動化など、さまざまな方法でコーディングを強化します。\n\nこの数年間、当社ではこうした生成AIやエージェント型AIの機能をGitLabプラットフォームに統合するために[GitLab Duo](https://about.gitlab.com/ja-jp/gitlab-duo/)を開発してきました。GitLabが実施した[グローバルDevSecOps調査](https://about.gitlab.com/ja-jp/developer-survey/)によると、デベロッパーはコード作成以外のタスクに作業時間の79%を費やしています。コード作成はソフトウェアライフサイクルの始まりに過ぎないため、当社ではソフトウェア開発ライフサイクル全体をとおしてAIを統合する戦略を採用してきました。\n\n本リリースではこの戦略をさらに進め、デベロッパーのみなさまが追加料金なしでAIの恩恵を受けられるように、GitLab PremiumおよびUltimateプランにGitLab Duoの基本機能を追加しました。\n\nPremiumとUltimateでChatとコード提案をご利用いただけるようになったことで、すべてのソフトウェアエンジニアが、さまざまなツールやライセンス、そして管理体制を必要とせずに、IDE内でワークフローを高速化できます。既存のPremiumおよびUltimateのお客様は全員、GitLab 18.0へのアップグレード後にすぐにChatとコード提案をご利用いただけるようになります。また、この機能強化は新規のお客様には標準機能として提供されます。\n\n> **「GitLabはすでに、分散されたツールチェーンへの依存を排除し、これにより連携していないソリューションにかかるコストを削減し、ワークフローを効率化する上で重要な役割を果たしています。GitLab PremiumにGitLab Duoを追加することで、さらなる効率化とコスト削減が期待できます。日常的なコーディング作業にかかる時間が削減されるため、デベロッパーは真のビジネス価値を生み出す複雑な課題に、より多くの時間を費やせるようになります。」**\n>\n>- McKenzie Intelligence Services社、最高技術責任者、Andrei Nita氏\n\n\u003Cdiv style=\"padding:56.25% 0 0 0;position:relative;\">\u003Ciframe src=\"https://player.vimeo.com/video/1083723619?badge=0&amp;autopause=0&amp;player_id=0&amp;app_id=58479\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write; encrypted-media\" style=\"position:absolute;top:0;left:0;width:100%;height:100%;\" title=\"GitLab Premium with Duo Core\">\u003C/iframe>\u003C/div>\u003Cscript src=\"https://player.vimeo.com/api/player.js\">\u003C/script>\n\n\u003Cbr>\u003C/br>\n\n本リリースから、PremiumおよびUltimateのお客様は、以下のAIネイティブ機能をご利用いただけます。\n\n#### GitLab Duoコード提案\n\n* コメントから完全な関数やコードブロックを生成 \n* 入力時にAIによる的確なコード補完を実行\n* 20以上のプログラミング言語をサポート\n* 主要なIDE各種で利用可能\n\nコード提案機能については、こちらの操作ガイドをご覧ください（ツアーを開始するには以下の画像をクリックしてください）。\n\n\u003Ca href=\"https://gitlab.navattic.com/code-suggestions\">\u003Cimg src=\"https://res.cloudinary.com/about-gitlab-com/image/upload/v1752175911/Blog/b5gdnls7jdyrpeyjby5j.png\" alt=\"GitLab Duo Code Suggestions cover image\">\u003C/a>\n\n詳細については、[コード提案のドキュメント](https://docs.gitlab.com/user/project/repository/code_suggestions/)でもご確認いただけます。\n\n#### GitLab Duo Chat\n\n* 馴染みのないコードを分かりやすく解説し、複雑な機能の理解をサポート\n* 既存のコードをリファクタリングして品質と保守性を向上\n* バグを早期に発見できるように、包括的なテストケースを自動作成\n* ワークフロー内でコードの問題を直接修正\n\n![ChatによるAPIエンドポイントの説明](https://res.cloudinary.com/about-gitlab-com/image/upload/v1749673912/Blog/Content%20Images/Duo_Chat_-_gif_-_API_endpoint_explanation__3_.gif)\n\n詳細については、[Duo Chatのドキュメント](https://docs.gitlab.com/user/gitlab_duo_chat/)をご覧ください。\n\n> **「私たちGitLabユーザーにとって、GitLab Duoのインテリジェントなコード提案は、デベロッパーの日常業務を支える資産となっています。Chat機能と組み合わせることで、即時にフィードバックを得て改善できるため、開発サイクルが加速し、より安全なコードベースが実現できています。ワークフローにシームレスに統合された強力な機能です。」**\n>\n>- Ignite by FORVIA HELLA社、最高技術責任者、Felix Kortmann氏\n\n## GitLab Premiumのお客様もGitLab Duo Enterpriseをご利用可能に\n\n多くのお客様からのご要望に応え、[GitLab Premium](https://about.gitlab.com/ja-jp/pricing/premium/)をご利用のお客様は、GitLab UltimateにアップグレードすることなくAI機能をフル搭載したGitLab Duo Enterpriseをご購入いただけるようになりました。Premiumのお客様は、ソフトウェア開発ライフサイクル全体にシームレスに統合された、充実したAI機能をご活用いただけます。\n\nDuo Enterprise のパワフルな機能ラインナップは次のとおりです。\n\n* [GitLab Duo根本原因分析](https://docs.gitlab.com/user/gitlab_duo/use_cases/#root-cause-analysis-use-cases)：CI/CDパイプラインの失敗を迅速に解決して、パイプラインを健全に保ちます。  \n* [GitLab Duoコードレビュー](https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#have-gitlab-duo-review-your-code)：GitLab Duoをコードレビュアーとして活用することで、マージリクエストのレビューを高速化します。  \n* [高度なチャット](https://docs.gitlab.com/user/gitlab_duo_chat/)：会話の内容を要約し、コード変更を理解できるように支援するほか、複雑な設定のサポートを提供します。  \n* [GitLab Duo Self-Hosted](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/)：使用が許可されたAIモデルを社内でホスティングすることで、インターネット未接続（エアギャップ）環境やオフライン環境でもGitLab Duoを活用できます。\n\nGitLab Duo Enterpriseの提供と並行して、今GitLab Premiumの価値向上に向けた投資も強化しています。GitLab 17のリリース以降、以下を含む[100件を超える機能や改善を実装してきました](https://gitlab.com/gitlab-org/gitlab/-/releases)。\n\n* [CI/CDカタログ](https://about.gitlab.com/blog/ci-cd-catalog-goes-ga-no-more-building-pipelines-from-scratch/)：デベロッパーが既存のCI/CDコンポーネントや設定を共有、検索、再利用できる一覧ページ  \n* [アーティファクトレジストリ](https://docs.gitlab.com/user/packages/virtual_registry/)：デベロッパーにアーティファクトへの安全なアクセスを提供するとともに、CI/CDパイプラインとのシームレスな統合を実現  \n* [リモート開発](https://docs.gitlab.com/user/project/remote_development/)：デベロッパーがオンデマンドのクラウドベースの開発環境で作業できるように支援する機能\n\n> [GitLab Premiumの詳細はこちらをご覧ください。](https://about.gitlab.com/ja-jp/pricing/premium/)\n\n## GitLab Duo：組織の現在のステージに対応するAI\n\nGitLabは、ProからEnterpriseまで多彩なDuoサービスをご用意しており、お客様のAI導入段階に最適なソリューションをお選びいただけます。チームのAI活用レベルが高まるにつれて、より多くの機能を活用して、安全なソフトウェアをより迅速にビルド、テスト、デプロイすることができます。\n\n![GitLab Duoプランの主な機能](https://res.cloudinary.com/about-gitlab-com/image/upload/v1749673912/Blog/Content%20Images/Screenshot_2025-05-14_at_8.50.34_AM.png)\n\n## GitLab UltimateおよびPremiumの既存のお客様がGitLab Duoを使い始めるには\n\nGitLab 18.0以降、UltimateとPremiumの既存のお客様は、コード提案とChatがデフォルトではオフになっていますが、以下の手順で簡単に有効にできます。\n\nGitLab PremiumおよびUltimateでGitLab Duoを利用する手順：\n\n1. GitLab PremiumまたはUltimateを利用中であることを確認します。いずれも導入していない場合は、無料トライアルを開始できます。  \n2. 組織の設定で、GitLab Duoを有効にします。  \n3. ローカルIDEを使用している場合は、対応するGitLab[エディタ拡張機能](https://docs.gitlab.com/editor_extensions/#available-extensions)をインストールします。  \n4. サポートされているローカルIDEまたはGitLab Web IDEで、コード提案やChatの利用を開始します。\n\n**注**：新規ユーザーまたはトライアル中の場合、GitLabのAI機能が自動的に有効になります。\n\n## AIネイティブ開発にはDevSecOpsプラットフォームが不可欠\n\n今やAIによって、デベロッパーエクスペリエンスは根本から再構築されつつあります。これからの組織では、ソフトウェア開発に携わる人員が単に増えるだけではなく、AIによって本番環境向けコードの量も増えることになります。**そのため、GitLabの存在価値がはかつてないほど高まっています。** \n\n当社では、この新時代に向け、GitLab Duoを備えたGitLab PremiumおよびUltimateを構築しました。これによりチームは、あらゆるコードを安全に一元管理できる環境を構築できます。組織全体でAIがコードを生成する環境下で、GitLabが司令塔としての役割を担います。セキュリティスキャンやコンプライアンスチェック、パイプライン管理のために別々のツールを導入する必要はありません。組織の成長に合わせてスケールする単一の統合プラットフォームで、各コードが本番環境へのリリース前に基準を満たしているかを確認できます。AIによって開発速度が加速する中、GitLabを使えば全工程を通じて一貫性のあるコントロール、セキュリティ、品質を保てます。\n\n> チームの生産性を向上させるGitLab Duoの活用方法については、[GitLab Premiumのページをご覧ください](https://about.gitlab.com/ja-jp/pricing/premium/)。すでにGitLabをご利用の場合は、GitLab担当者にご連絡いただき、デモンストレーションをご予約ください。また、2025年6月24日に[GitLab 18バーチャルリリースイベント](https://about.gitlab.com/eighteen/)を開催します。AIとともに進化するソフトウェア開発の未来像を探る機会となりますので、ぜひご参加ください。\n\n*本ブログは、[Unlocking AI for every GitLab Premium and Ultimate customer](https://about.gitlab.com/blog/gitlab-premium-with-duo/)の抄訳です。内容に相違がある場合は、原文が優先されます。*",[672,781,780,805,14],{"slug":846,"featured":92,"template":679},"gitlab-premium-with-duo","content:ja-jp:blog:gitlab-premium-with-duo.yml","Gitlab Premium With Duo","ja-jp/blog/gitlab-premium-with-duo.yml","ja-jp/blog/gitlab-premium-with-duo",{"_path":852,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":853,"content":858,"config":864,"_id":866,"_type":16,"title":867,"_source":18,"_file":868,"_stem":869,"_extension":21},"/ja-jp/blog/getting-started-with-gitlab-understanding-ci-cd",{"title":854,"description":855,"ogTitle":854,"ogDescription":855,"noIndex":6,"ogImage":793,"ogUrl":856,"ogSiteName":770,"ogType":771,"canonicalUrls":856,"schema":857},"GitLab入門：CI/CDについて理解する","この初心者向けガイドでは、継続的インテグレーション（CI）／継続的デリバリー（CD）の基本（CI/CDコンポーネントの概要や作成方法など）を解説します。","https://about.gitlab.com/blog/getting-started-with-gitlab-understanding-ci-cd","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab入門：CI/CDについて理解する\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab\"}],\n        \"datePublished\": \"2025-04-25\",\n      }",{"title":854,"description":855,"authors":859,"heroImage":793,"date":861,"body":862,"category":14,"tags":863},[860],"GitLab","2025-04-25","すべてのコード変更が自動的にビルドおよびテストされ、そのうえでユーザーにデプロイされる。そんなワークフローを想像してみてください。それを可能にするのが、[継続的インテグレーション／継続的デリバリー（CI/CD）](https://about.gitlab.com/ja-jp/topics/ci-cd/)です。CI/CDは、バグの早期発見、コード品質の確保、および迅速かつ頻繁なソフトウェアデリバリーの実現に役立ちます。\n\n\n### CI/CDとは\n\n\n*\n**継続的インテグレーション（CI）**は、デベロッパーがコード変更を頻繁に（1日に数回が理想とされる）共有リポジトリに統合する開発手法です。各統合は自動化されたビルドとテストのプロセスによって検証されるため、早い段階で問題を検出できます。\n\n*\n**継続的デリバリー（CD）**はCIを拡張した開発手法で、リリースパイプラインを自動化することで、コードを*常に*デプロイ可能な状態に保ちます。アプリケーションをさまざまな環境（stagingステージ、本番環境など）に自動的に、またはワンクリックでデプロイできます。\n\n*\n**継続的デプロイ**はさらにもう一歩踏み込み、本番環境に*成功したビルドをすべて*デプロイする手法です。継続的デプロイは、自動化されたテストとデプロイのプロセスに十分な信頼性がある場合にのみ、有効です。\n\n\n### GitLab CI/CDが選ばれる理由\n\n\nGitLab\nCI/CDは、GitLabに組み込まれた強力な統合システムです。これを利用することで、ソフトウェア開発ライフサイクル全体をシームレスに自動化できます。GitLab\nCI/CDによって、以下のことを実現できます。\n\n\n* **あらゆるプロセスの自動化**：アプリケーションのビルド、テスト、デプロイを簡単に行えます。\n\n* **バグの早期発見**：問題が本番環境に到達する前に検出し、修正できます。\n\n* **フィードバックループの高速化**：コード変更に関するフィードバックを即座に受け取れます。\n\n* **コラボレーションの向上**：自動化されたワークフローによって、より効果的に共同作業を行えます。\n\n* **デリバリーの高速化**：ソフトウェアをより迅速かつ頻繁にリリースできます。\n\n* **リスクの低減**：デプロイ時のエラーやロールバックを最小限に抑えられます。\n\n\n### GitLab CI/CDの構成要素\n\n\n*\n`.gitlab-ci.yml`：プロジェクトのルートディレクトリにある[YAMLファイル](https://docs.gitlab.com/ee/ci/yaml/)です。ステージやジョブ、Runnerなど、CI/CDパイプラインの構成を定義します。\n\n* [**GitLab\nRunner**](https://docs.gitlab.com/runner/)：任意のインフラストラクチャ（物理マシン、仮想マシン、Dockerコンテナ、Kubernetesクラスターなど）上でCI/CDジョブを実行するエージェントです。\n\n*\n[**ステージ**](https://docs.gitlab.com/ee/ci/yaml/#stages)：ジョブ（ビルド、テスト、デプロイなど）の実行順序を定義します。\n\n*\n[**ジョブ**](https://docs.gitlab.com/ee/ci/yaml/#job-keywords)：ステージ内の個々の作業単位（コードのコンパイル、テストの実行、stagingステージへのデプロイなど）を指します。\n\n\n### GitLab CIの設定\n\n\nGitLab CIは簡単に使い始められます。以下は`.gitlab-ci.yml`ファイルの基本的な設定例です。\n\n\n```yaml\n\n\nstages:\n  - build\n  - test\n  - deploy\n\nbuild_job:\n  stage: build\n  script:\n    - echo \"アプリケーションをビルド中...\"\n\ntest_job:\n  stage: test\n  script:\n    - echo \"テストを実行中...\"\n\ndeploy_job:\n  stage: deploy\n  script:\n    - echo \"本番環境へデプロイ中...\"\n  environment:\n    name: production\n\n```\n\n\nこの設定では、「build」「test」「deploy」の3つのステージを定義しています。それぞれのステージには、単純なスクリプトを実行するジョブが含まれています。\n\n\n### CI/CDの設定例\n\n\n次に、より実践的な例をいくつか見てみましょう。\n\n\n**Node.jsアプリケーションのビルドとデプロイ**\n\n\n以下のパイプライン定義では、npmを使用してNode.jsアプリケーションのビルドおよびテストを行い、[dpl](https://docs.gitlab.com/ci/examples/deployment/)を用いてアプリケーションをHerokuにデプロイする方法を説明しています。パイプラインのdeployステージでは、[GitLab\nCI/CD変数](https://docs.gitlab.com/ci/variables/)を使用しています。デベロッパーは機密情報（認証情報など）をこの変数に格納して、CI/CDプロセスで安全に使用できます。この例では、Herokuにデプロイする際にdplツールが使用するAPIキーが、`$HEROKU_API_KEY`という名前の変数キーに格納されます。\n\n\n```yaml\n\n\nstages:\n  - build\n  - test\n  - deploy\n\nbuild:\n  stage: build\n  image: node:latest\n  script:\n    - npm install\n    - npm run build\n\ntest:\n  stage: test\n  image: node:latest\n  script:\n    - npm run test\n\ndeploy:\n  stage: deploy\n  image: ruby:latest\n  script:\n    - gem install dpl\n    - dpl --provider=heroku --app=$HEROKU_APP_NAME --api-key=$HEROKU_API_KEY\n\n```\n\n\n**異なる環境へのデプロイ（stagingステージや本番環境）**\n\n\nGitLabではさらに、CI/CDを使用した[環境](https://docs.gitlab.com/ci/environments/)という機能もご用意しています。この機能を使用すると、CI/CDから対象のインフラストラクチャへのデプロイを追跡できます。以下の例では、パイプラインにおいてstagingステージと本番環境の環境プロパティを持つステージが追加されます。deploy_stagingステージでは必ず指定したスクリプトが実行される一方、deploy_productionステージでは手動による承認が必要となります。これは誤って本番環境へのデプロイが行われるのを防ぐためです。\n\n\n```yaml\n\n\nstages:\n  - build\n  - test\n  - deploy_staging\n  - deploy_production\n\nbuild:\n  # ...\n\ntest:\n  # ...\n\ndeploy_staging:\n  stage: deploy_staging\n  script:\n    - echo \"stagingステージへのデプロイ中...\"\n  environment:\n    name: staging\n\ndeploy_production:\n  stage: deploy_production\n  script:\n    - echo \"本番環境へのデプロイ中...\"\n  environment:\n    name: production\n  when: manual  # 手動による承認が必要\n\n```\n\n\n### GitLab Auto DevOps\n\n\n[GitLab Auto\nDevOps](https://docs.gitlab.com/ee/topics/autodevops/)は、アプリケーションを自動的にビルド、テスト、デプロイするためのあらかじめ定義された設定を提供することで、CI/CDを簡素化します。ベストプラクティスと業界標準に基づいてワークフローを効率化する仕組みです。\n\n\nAuto DevOpsを有効にする方法：\n\n\n1. プロジェクトの**設定 > CI/CD > 一般パイプライン**の順にアクセスします。\n\n2. **Auto DevOps**オプションを有効にします。\n\n\nAuto\nDevOpsを有効にすると、プロジェクトの言語とフレームワークが自動的に検出され、必要なビルド、テスト、デプロイのステージが設定されます。そのため、`.gitlab-ci.yml`ファイルを作成する必要すらありません。\n\n\n### CI/CDカタログ\n\n\n[CI/CDカタログ](https://about.gitlab.com/blog/faq-gitlab-ci-cd-catalog/)には、CI/CDワークフローを拡張するために使用可能な、公開済みの[CI/CDコンポーネント](https://docs.gitlab.com/ee/ci/components/)をまとめたプロジェクトが一覧で記載されています。誰でもコンポーネント用のプロジェクトを作成してCI/CDカタログに追加したり、既存プロジェクトへのコントリビュートを通じて公開コンポーネントを改善したりできます。これらのコンポーネントは、GitLab.comの[CI/CDカタログ](https://gitlab.com/explore/catalog)に掲載されています。\n\n\n> [チュートリアル：初めてのGitLab\nCI/CDコンポーネントの設定方法](https://about.gitlab.com/blog/tutorial-how-to-set-up-your-first-gitlab-ci-cd-component/)\n\n\n### CIテンプレート\n\n\nさらに、独自の[CIテンプレート](https://docs.gitlab.com/ee/ci/examples/)を作成して、複数のプロジェクトに対するCI/CDの設定を標準化し、再利用することもできます。これにより、一貫性が高まり、重複が生じにくくなります。\n\n\nCIテンプレートの作成方法：\n\n\n1. 専用のプロジェクトまたはリポジトリに`.gitlab-ci.yml`ファイルを作成します。\n\n2. テンプレートでCI/CD設定を定義します。\n\n3. プロジェクトの`.gitlab-ci.yml`ファイルで、`include`キーワードを使用してテンプレートをインクルードします。\n\n\n## 開発ワークフローをレベルアップ\n\n\nGitLab CI/CDは、開発ワークフローに変革をもたらせる強力なツールです。CI/CDの概念を理解して、パイプラインを設定し、Auto\nDevOpsやCI/CDカタログ、CIテンプレートなどの機能を活用すれば、ソフトウェア開発ライフサイクル全体を自動化し、高品質なソフトウェアをより迅速かつ効率的に提供できます。\n\n\n> さらに詳しく知りたい場合は、[GitLab\nUniversityのコースに登録](https://university.gitlab.com/)するか、[GitLab\nUltimateの無料トライアル](https://about.gitlab.com/ja-jp/free-trial/)を今すぐお試しください。\n\n\n## 「GitLab入門」シリーズ\n\n\n「GitLab入門」シリーズのその他の記事もぜひご覧ください。\n\n\n-\n[ユーザーの管理方法](https://about.gitlab.com/ja-jp/blog/getting-started-with-gitlab-how-to-manage-users/)\n\n- \n[GitLabへのプロジェクトのインポート方法](https://about.gitlab.com/blog/getting-started-with-gitlab-how-to-import-your-projects-to-gitlab/)  \n\n-\n[プロジェクト管理を極める](https://about.gitlab.com/blog/getting-started-with-gitlab-mastering-project-management/)\n\n- [gitlab-triage\ngemを使ったアジャイルワークフローの自動化](https://about.gitlab.com/blog/automating-agile-workflows-with-the-gitlab-triage-gem/)\n",[110,803,804,781,14,802],{"slug":865,"featured":92,"template":679},"getting-started-with-gitlab-understanding-ci-cd","content:ja-jp:blog:getting-started-with-gitlab-understanding-ci-cd.yml","Getting Started With Gitlab Understanding Ci Cd","ja-jp/blog/getting-started-with-gitlab-understanding-ci-cd.yml","ja-jp/blog/getting-started-with-gitlab-understanding-ci-cd",{"_path":871,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":872,"content":878,"config":886,"_id":888,"_type":16,"title":889,"_source":18,"_file":890,"_stem":891,"_extension":21},"/ja-jp/blog/a-guide-to-the-breaking-changes-in-gitlab-18-0",{"title":873,"description":874,"ogTitle":873,"ogDescription":874,"noIndex":6,"ogImage":875,"ogUrl":876,"ogSiteName":770,"ogType":771,"canonicalUrls":876,"schema":877},"GitLab 18.0における破壊的な変更に関するガイド","次期メジャーリリースで予定されている機能の削除に備えましょう。GitLab 18.0にスムーズに移行できるように、ご自身にどのような影響があるかを見極め、ドキュメントに記載されている影響を軽減するためのステップをご確認ください。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659437/Blog/Hero%20Images/AdobeStock_398929148.jpg","https://about.gitlab.com/blog/a-guide-to-the-breaking-changes-in-gitlab-18-0","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 18.0における破壊的な変更に関するガイド\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Martin Brümmer\"},{\"@type\":\"Person\",\"name\":\"Fabian Zimmer\"},{\"@type\":\"Person\",\"name\":\"Sam Wiskow\"}],\n        \"datePublished\": \"2025-04-18\",\n      }",{"title":873,"description":874,"authors":879,"heroImage":875,"date":883,"body":884,"category":14,"tags":885},[880,881,882],"Martin Brümmer","Fabian Zimmer","Sam Wiskow","2025-04-18","次のメジャーリリースであるGitLab 18.0では、DevSecOpsによるイノベーションの限界を打ち破る新機能が多数提供されます。一方で、GitLabからいくつかの非推奨機能が削除される予定です。このページでは、予定されている破壊的な変更についてご留意いただきたい点と、その影響を軽減する方法をご紹介します。\n\n## デプロイスケジュール\n\n### GitLab.com\n\nGitLab.comでは破壊的な変更が以下の3つの期間にのみデプロイされる予定です。\n\n- 2025年4月21～23日  \n- 2025年4月28～30日  \n- 2025年5月5～7日\n\nその他にも多くの変更が、今月いっぱい実装される予定です。各期間中にデプロイされる影響度の高い変更については、[こちらの破壊的な変更に関するドキュメント](https://docs.gitlab.com/update/breaking_windows/)で詳細をご覧いただけます。\n\n***注**：例外的な状況が生じた場合は、破壊的な変更が上記の期間をわずかに前後する可能性があります。*\n\n### GitLab Self-Managed\n\nGitLab 18.0は5月15日から提供開始されます。リリーススケジュールの詳細については、[こちら](https://about.gitlab.com/releases/)をご覧ください。\n\n### GitLab Dedicated\n\nGitLab 18.0へのアップグレードは、2025年6月24日から29日までのメンテナンス期間中に行われます。詳細およびご自身の地域のメンテナンス期間については、[こちら](https://docs.gitlab.com/administration/dedicated/maintenance/#release-rollout-schedule)をご覧ください。\n\nまた、18.0へのアップグレードに先立ち、導入される変更点がお客様の環境に及ぼす影響を評価し、必要な対応を計画する上で役立つカスタムツールとリソースをご用意しました。[影響を緩和するためのツールとリソースに関する情報はこちら](#tools-and-resources-to-manage-your-impact)でご確認いただけます。\n\n18.0で削除される予定の全項目の一覧については、[非推奨機能のページ](https://docs.gitlab.com/ee/update/deprecations?removal_milestone=18.0)をご覧ください。今後の予定に加え、デプロイ方法に基づき今年予定されているリリースに向け準備する方法については、本ページでご紹介していますのでぜひ最後までお読みください。\n\n## 破壊的な変更\n\n### 影響度：高\n\n**1. CI/CDジョブトークン - 「プロジェクトからのアクセスを制限」設定の削除**\n\nGitLab.com | Self-Managed | Dedicated\n\nGitLab 14.4ではセキュリティ強化の目的で、**[プロジェクトのCI/CDジョブトークン（CI_JOB_TOKEN）*からの*アクセスを制限](https://docs.gitlab.com/ci/jobs/ci_job_token/#limit-your-projects-job-token-access)**する設定を追加しました。この設定は当初、**CI_JOB_TOKENアクセスを制限**という名前でしたが、よりわかりやすくするために、GitLab 16.3で**このプロジェクト*からの*アクセスを制限**という名称に変更されました。\n\nGitLab 15.9では、**[認証されたグループとプロジェクト](https://docs.gitlab.com/ci/jobs/ci_job_token/#add-a-group-or-project-to-the-job-token-allowlist)**という別の設定を新たに追加しました。この設定は、許可リストを使用してプロジェクトへのジョブトークンでのアクセスを制御します。新たに追加されたこの設定は、元の設定よりも大幅に改善されています。最初のイテレーションはGitLab 16.0で非推奨となっており、GitLab 18.0で削除される予定です。\n\nすべての新規プロジェクトでは、**このプロジェクト*からの*アクセスを制限**設定はデフォルトで無効になります。GitLab 16.0以降のバージョンでは、この設定が無効になったプロジェクトで再度有効にすることはできません。代わりに、**認証されたグループとプロジェクト**設定を使用して、プロジェクトへのジョブトークンでのアクセスを制御してください。\n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#cicd-job-token---limit-access-from-your-project-setting-removal)\n- [GitLab Detectiveによる検証を実施可能](https://gitlab.com/gitlab-com/support/toolbox/gitlab-detective/-/blob/main/README.md)\n\n**2. CI/CDジョブトークン - 認証されたグループとプロジェクトの許可リストの強制適用**\n\nGitLab.com | Self-Managed | Dedicated\n\nGitLab 15.9で**[認証されたグループとプロジェクトの設定](https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#add-a-group-or-project-to-the-job-token-allowlist)**（GitLab 16.3で**このプロジェクトへのアクセスを制限**に名称が変更）が導入されたことで、プロジェクトへのCI/CDジョブトークンでのアクセスを管理できるようになりました。**このプロジェクトと許可リストに含まれるすべてのグループおよびプロジェクトのみ**に設定されている場合、許可リストに追加されたグループまたはプロジェクトのみがジョブトークンを使用してプロジェクトにアクセスできます。\n\n* **GitLab 15.9より前のバージョン**では、デフォルトでは許可リストは無効になっており（[**すべてのグループとプロジェクト**](https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#allow-any-project-to-access-your-project)アクセス設定が選択されていた）、どのプロジェクトからもジョブトークンでアクセスできるようになっていました。   \n* **GitLab 17.6以降のバージョン**では、GitLab Self-ManagedおよびDedicatedインスタンスの管理者は、プロジェクトメンテナーが**すべてのグループとプロジェクト**を選べないように設定して、[**すべてのプロジェクトに対してより安全性の高い設定を強制**](https://docs.gitlab.com/ee/administration/settings/continuous_integration.html#job-token-permissions)できるようになりました。この変更により、プロジェクト間でのセキュリティレベルをさらに強化できます。   \n* GitLab 18.0では、この設定がデフォルトで有効になります。GitLab.comでは、プロジェクトの認証ログに基づいて、プロジェクトの許可リストが自動的に作成されます。   \n* **GitLab.com**でのこの変更に備えて、クロスプロジェクトの認証にジョブトークンを使用しているプロジェクトメンテナーは、担当するプロジェクトにおいて**認証されたグループとプロジェクト**の許可リストを入力する必要があります。完了後、**このプロジェクトと許可リストに含まれるすべてのグループとプロジェクトのみ**に設定を変更してください。GitLab 18.0より前のバージョンのプロジェクトの[認証ログ](https://docs.gitlab.com/ci/jobs/ci_job_token/#job-token-authentication-log)に基づき許可リストの作成を***自動化***するには、ご用意している[移行ツール](https://docs.gitlab.com/ci/jobs/ci_job_token/#auto-populate-a-projects-allowlist)のご利用をおすすめします。   \n* **Self-Managedユーザー**は18.0へのアップグレードを完了する前に、許可リストの入力を完了する必要があります。   \n* **Dedicatedユーザー**は、お客様固有のインスタンスに適した計画を立ててください。GitLabアカウントチームがお手伝いいたします。\n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#cicd-job-token---authorized-groups-and-projects-allowlist-enforcement)\n- [ドキュメント](https://docs.gitlab.com/ci/jobs/ci_job_token/#add-a-gr)\n- [GitLab Detectiveによる検証を実施可能](https://gitlab.com/gitlab-com/support/toolbox/gitlab-detective/-/blob/main/README.md)\n\n**3. 依存プロキシへのトークンスコープの強制適用**\n\nGitLab.com | Self-Managed | Dedicated\n\nコンテナの依存プロキシは、**パーソナルやプロジェクト、グループ**アクセストークンを用いた**`docker login`**および**`docker pull`**リクエストを受け取った場合、そのスコープを検証せずにリクエストを受け入れます。\n\nGitLab 18.0では、依存プロキシでの認証の際に**`read_registry`**および**`write_registry`**スコープが必要となります。この変更の適用後に、これらのスコープを持たないトークンによる認証リクエストが行われた場合、**拒否**されます。\n\nそのため、アップグレードする前に、[**必要なスコープ**](https://docs.gitlab.com/ee/user/packages/dependency_proxy/#authenticate-with-the-dependency-proxy-for-container-images)を持つアクセストークンを新たに作成し、作成したトークンを使用してワークフローの変数とスクリプトを更新してください。\n\nまた、[**Dependency Token Checker**](https://gitlab.com/gitlab-com/cs-tools/gitlab-cs-tools/dependancy-token-checker/)をご利用いただくことも可能です。コミュニティが開発したスクリプトで、トークンの表示および自動でのローテーションを行えます。\n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#dependency-proxy-token-scope-enforcement)\n\n### 影響度：中\n\n**1. GitLab.comでの脆弱性に関する新しいデータ保持制限**\n\nGitLab.com - **Ultimateプランのお客様のみ**\n\nGitLab 18.1から、システムのパフォーマンスと信頼性の向上の目的で、GitLab.comで**Ultimate**プランをご利用のお客様を対象に、6か月間にわたり段階的に**新しいデータ保持制限**を導入します。データ保持制限は、脆弱性データの保存期間に影響します。\n\n12か月以上前に検出されたもので更新されていない脆弱性は、自動的にコールドストレージアーカイブに移動されます。コールドストレージアーカイブのデータに関する詳細は以下のとおりです。\n\n* GitLab UIからアクセスおよびダウンロード可能  \n* 3年間保持される  \n* 3年後に完全に削除される \n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#new-data-retention-limits-for-vulnerabilities-on-gitlabcom)\n- [ドキュメント](https://handbook.gitlab.com/handbook/security/records-retention-deletion/)\n\n**2. `allowed_pull_policies`にないコンテナイメージのプルポリシーを拒否**\n\nGitLab.com | Self-Managed | Dedicated  \n\n設定済みのプルポリシーはすべて、Runnerの**`config.toml`**ファイル内の[**allowed_pull_policies設定**](https://docs.gitlab.com/runner/executors/docker/#allow-docker-pull-policies)に含まれていなければなりません。含まれていない場合、**`incompatible pull policy`**エラーにより、ジョブの実行が失敗します。\n\n現在の実装では、複数のプルポリシーが定義されている場合、少なくとも1つのプルポリシーが**`allowed-pull-policies`**の設定内容と一致すれば、ほかのポリシーが含まれていなくても、ジョブの実行は成功します。\n\nGitLab 18.0では、**`allowed-pull-policies`**に含まれるプルポリシーと一致するものがない場合にのみ、ジョブが失敗します。ただし、これまでの動作とは異なり、**`allowed-pull-policies`**に含まれるプルポリシーだけをジョブが使用するようになります。この違いにより、現在成功しているジョブがGitLab 18.0では失敗する可能性があります。\n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#reject-container-image-pull-policies-not-in-allowed_pull_policies)\n- [ドキュメント](https://docs.gitlab.com/runner/executors/docker/#allow-docker-pull-policies)\n\n**3. PostgreSQL 14と15がサポート対象外に**\n\nSelf-Managed \n\nGitLabは、[**PostgreSQLの年間アップグレードスケジュール**](https://handbook.gitlab.com/handbook/engineering/infrastructure-platforms/data-access/database-framework/postgresql-upgrade-cadence/)に従っています。\n\nそのため、GitLab 18.0でPostgreSQL 14と15はサポート対象外となる予定です。GitLab 18.0で必要となるPostgreSQLの最小バージョンは、PostgreSQL 16です。\n\nPostgreSQL 14と15は、GitLab 17の全リリースサイクルでサポートされます。PostgreSQL 16は、GitLab 18.0より前のバージョンにアップグレードしたインスタンスでもサポートされます。\n\nこの変更に備えて、[**PostgreSQLクラスター**](https://docs.gitlab.com/administration/postgresql/replication_and_failover/)を使用していないインスタンス（Omnibus Linuxパッケージがインストールされた単一のPostgreSQLインスタンスを実行中の場合など）では、GitLab 17.11へのアップグレード時にPostgreSQLをバージョン16に自動的にアップグレードしようと試行します。[**PostgreSQLクラスター**](https://docs.gitlab.com/administration/postgresql/replication_and_failover/)を使用している場合、または[**このような自動アップグレードを希望しない**](https://docs.gitlab.com/omnibus/settings/database/#opt-out-of-automatic-postgresql-upgrades)場合、GitLab 18.0にアップグレードするには、事前に[**PostgreSQL 16に手動でアップグレード**](https://docs.gitlab.com/omnibus/settings/database/#upgrade-packaged-postgresql-server)する必要があります。その際、アップグレードを行えるように十分なディスク容量があることを確認してください。\n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#postgresql-14-and-15-no-longer-supported)\n- [ドキュメント](https://docs.gitlab.com/omnibus/settings/database/#upgrade-packaged-postgresql-server)\n- [移行に関するガイドライン](https://docs.gitlab.com/omnibus/development/managing-postgresql-versions/)\n\n**4. Terraform CI/CDテンプレートの非推奨化**\n\nSelf-Managed\n\nTerraform CI/CDテンプレートは非推奨化されており、GitLab 18.0で削除される予定です。影響を受けるテンプレートは以下のとおりです。\n\n* `Terraform.gitlab-ci.yml`  \n* `Terraform.latest.gitlab-ci.yml`  \n* `Terraform/Base.gitlab-ci.yml`  \n* `Terraform/Base.latest.gitlab-ci.yml`\n\nこれにより、GitLabはジョブイメージの**`terraform`**バイナリをBSLライセンスのもとで提供されているバージョンに更新することができなくなります。\n\n引き続きTerraformを使用するには、テンプレートと[**Terraformイメージ**](https://gitlab.com/gitlab-org/terraform-images)を複製し、適宜保持してください。カスタムビルドイメージへの[**移行手順の詳細についてはこちら**](https://gitlab.com/gitlab-org/terraform-images)でご確認いただけます。\n\n**また、代替案として、GitLab.comで新しいOpenTofu CI/CDコンポーネントの使用、またはGitLab Self-Managedで新しいOpenTofu CI/CDテンプレートの使用をおすすめします。** CI/CDコンポーネントはGitLab Self-Managedではまだ利用できませんが、[**イシュー#415638**](https://gitlab.com/gitlab-org/gitlab/-/issues/415638)において、この機能の追加が提案されています。GitLab Self-ManagedでCI/CDコンポーネントが利用可能になると、OpenTofu CI/CDテンプレートは削除される予定です。\n\n新しい[OpenTofu CI/CDコンポーネントの詳細についてはこちら](https://gitlab.com/components/opentofu)をお読みください。\n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#deprecate-terraform-cicd-templates)\n\n**5. Prometheusサブチャートのメジャーアップデート**\n\nSelf-Managed\n\nGitLab 18.0とGitLabチャート9.0で、Prometheusサブチャートのバージョンが15.3から27.3にアップデートされます。\n\nこのアップデートに伴い、デフォルトではPrometheus 3が付属するようになります。\n\nアップグレードを実行するには、手動での設定が必要です。Alertmanager、Node Exporter、Pushgatewayのいずれかが有効になっている場合は、Helm値も更新する必要があります。\n\n詳細については、[**移行ガイド**](https://docs.gitlab.com/charts/releases/9_0/#prometheus-upgrade)を参照してください。\n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#major-update-of-the-prometheus-subchart)\n\n### 影響度：低\n\n**1. SUSE Linux Enterprise Server 15 SP2パッケージのビルド終了**\n\nSelf-Managed\n\nSUSE Linux Enterprise Server (SLES) 15 SP2の長期サービスおよびサポート（LTSS）の提供は、2024年12月に終了しました。\n\nこれに伴い、Linuxパッケージインストール用のSLES SP2の配布を終了します。引き続きサポートをご利用いただくには、SLES 15 SP6にアップグレードする必要があります。\n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#support-for-suse-linux-enterprise-server-15-sp2)\n\n**2. Gitalyレートリミッターの削除**\n\nSelf-Managed\n\n以前、Gitalyでは[**RPCベースのレート制限**](https://gitlab.com/gitlab-org/gitaly/-/blob/4b7ea24f6172a03e7989879200b47b6fd0e2d059/doc/backpressure.md#L55-55)がサポートされていました。この機能では期待する結果が得られなかったため、GitLabでは非推奨となります。詳細については、非推奨化に関するイシューをご覧ください。\n\n（非推奨となる）レートリミッターを設定している場合は、エラーは返されず、単に設定が無視されます。\n\n代わりに、[**並行処理リミッター**](https://docs.gitlab.com/administration/gitaly/concurrency_limiting/)のご利用をおすすめします。\n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#gitaly-rate-limiting)\n\n**3. NGINXコントローラーイメージ1.3.1のサポートの非推奨化**\n\nSelf-Managed\n\nデフォルトのNGINXコントローラーイメージが1.11.2に更新されます。新しいバージョンでは、新たなRBACルールが必要となります。ユーザーによっては、独自のRBACルールを管理するために**nginx-ingress.rbac.create: false**を設定しています。\n\nこれらのユーザーは、1.11.2以降のバージョンに移行する前に、RBACルールを追加する必要があります。そのため、このHelm値が上記のように設定されている場合にのみ、1.3.1をデプロイするフォールバックメカニズムを実装しました。また、**nginx-ingress.controller.image.disableFallback**も追加しました。デフォルトではfalseに設定されています。独自のRBACを管理しているユーザーは、新しいRBACルールが適用されていることを確認してから、この値をtrueに設定することで、デプロイ環境で1.11.2も使用できるようになります。\n\nなお、バージョン17.5では、1.3.1のイメージのサポートとフォールバックメカニズムを非推奨とする予定です。これにより、1.3.1のサポートが完全に終了となり、多数のセキュリティ上のメリットを得られる1.11.2のみを使用できるようになります。\n\n[非推奨通知](https://docs.gitlab.com/update/deprecations/#fallback-support-for-gitlab-nginx-chart-controller-image-v131)\n\n**4. アプリケーションセキュリティテストアナライザーのメジャーバージョンをアップデート**\n\nGitLab.com | Self-Managed | Dedicated\n\nGitLab 18.0のリリースに合わせて、アプリケーションセキュリティテストステージで使用されるアナライザーのバージョンが大幅に更新されます。\n\nデフォルトで含まれているテンプレートを使用していない場合、または利用するアナライザーのバージョンを固定している場合は、CI/CDジョブの定義を更新して、固定したバージョンを削除するか、最新のメジャーバージョンに更新する必要があります。\n\nGitLab 17.0～17.11をお使いの場合は、GitLab 18.0のリリースまで、通常どおりアナライザーのアップデートをご利用いただけます。GitLab 18.0以降のバージョンでは、新たに修正されたバグや機能はすべて、新しいメジャーバージョンのアナライザーでのみリリースされます。\n\nGitLabのメンテナンスポリシーに基づき、バグ修正や新機能を非推奨バージョンに実装することはありません。セキュリティパッチは、必要に応じて最新の3つのマイナーリリースにバックポートされます。\n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#application-security-testing-analyzers-major-version-update)\n\n**5. API Discoveryにおいてデフォルトでブランチパイプラインを利用するように**\n\nGitLab.com | Self-Managed | Dedicated\n\nGitLab 18.0では、API DiscoveryのCI/CDテンプレート（**API-Discovery.gitlab-ci.yml**）のデフォルトの動作が更新されます。\n\nこのテンプレートはGitLab 18.0より前のバージョンでは、MRが開いているときに、デフォルトで[**マージリクエストパイプライン**](https://docs.gitlab.com/ci/pipelines/merge_request_pipelines/)を実行するように設定されていました。\n\nGitLab 18.0からは、ほかのASTスキャナーの[**Stableテンプレートエディション**](https://docs.gitlab.com/user/application_security/detect/roll_out_security_scanning/#template-editions)の動作に合わせて、このテンプレートの動作を変更します。\n\n* デフォルトでは、本テンプレートはブランチパイプラインでスキャンジョブを実行するようになります。  \n* CI/CD変数の**AST_ENABLE_MR_PIPELINES: true**を設定すると、MRが開いているときに代わりにMRパイプラインを使用できます。この新しい変数の実装状況は、[**イシュー#410880**](https://gitlab.com/gitlab-org/gitlab/-/issues/410880)で追跡されています。\n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#api-discovery-will-use-branch-pipelines-by-default)\n\n**6. DASTのDAST_DEVTOOLS_API_TIMEOUTのデフォルト値を低めに変更予定**\n\nGitLab.com | Self-Managed | Dedicated\n\n**DAST_DEVTOOLS_API_TIMEOUT**は、DASTスキャンがブラウザからの応答を待つ時間を指定する環境変数です。GitLab 18.0より前のバージョンでは、この変数の値は45秒に固定されていました。GitLab 18.0から、**DAST_DEVTOOLS_API_TIMEOUT**環境変数に動的な値が設定されます。この値は、他のタイムアウト設定をもとに算出されます。\n\n多くの場合、45秒という値は多くのスキャナー機能のタイムアウト値よりも高いものでした。動的に値を算出することで、__DAST_DEVTOOLS_API_TIMEOUT__変数をよりさまざまな状況で適用できるようになり、使いやすくなります。\n\n- [非推奨通知](https://docs.gitlab.com/update/deprecations/#dast-dast_devtools_api_timeout-will-have-a-lower-default-value) \n\n## 影響を制御するためのツールとリソース\n\n予定されている変更点がご利用のGitLabインスタンスに及ぼす影響を把握できるように専用ツールを開発しました。GitLab 18.0にスムーズに移行できるように、ご自身にどのような影響があるかを見極めてから、ドキュメントに記載されている影響を軽減するためのステップをご確認いただくことをおすすめします。\n\n* [非推奨機能の高度な検索](https://gitlab.com/gitlab-com/cs-tools/gitlab-cs-tools/deprecation-migration-tools/advanced-search-deprecations)：このツールはGitLabのAdvanced Search APIを使って、GitLabのグループやプロジェクト全体で、非推奨に関連する文字列を検索します。手動でチェックすべきファイルがあれば、それも報告します。*__注__：誤検出が生じる可能性もあります。*  \n* [依存関係スキャンビルドサポート検出ヘルパー](https://gitlab.com/security-products/tooling/build-support-detection-helper)：このツールは、依存関係スキャンの3つの非推奨事項（[1](https://docs.gitlab.com/update/deprecations/#dependency-scanning-for-javascript-vendored-libraries)、[2](https://docs.gitlab.com/update/deprecations/#dependency-scanning-upgrades-to-the-gitlab-sbom-vulnerability-scanner)、および[3](https://docs.gitlab.com/update/deprecations/#resolve-a-vulnerability-for-dependency-scanning-on-yarn-projects)。すべて19.0に延期）の影響を受けるプロジェクトを特定します。APIを使用して、関連するファイルとCIジョブ名をスキャンします。\n* [GitLab Detective](https://gitlab.com/gitlab-com/support/toolbox/gitlab-detective/-/blob/main/README.md)（Self-Managedでのみ利用可能）：実験的なツールで、インストールされているGitLabに既知の問題がないか自動的にチェックします。設定ファイルやデータベースの値を調べて、複雑な確認作業を行います。**注**：必ずGitLabノード上で直接実行してください。\n\nまた、GitLab Universityでは、これらの変更点に備え、計画および影響を緩和するための対応を行う上で役立つミニコース（15分以内）を公開しました。[ぜひこちらから学習を開始してください](https://university.gitlab.com/catalog?query=18.0)。\n\n有料プランをご利用の方で、ご紹介した変更点についてご質問がある場合や、サポートをお求めの場合は、GitLabサポートポータルで[サポートチケットを作成](https://about.gitlab.com/support/portal/)してください。\n\n[Gitlab.comのFreeプランをご利用](https://about.gitlab.com/support/statement-of-support/#free-users)の場合は、[GitLabドキュメント](https://docs.gitlab.com/)や[GitLabコミュニティフォーラム](https://forum.gitlab.com/)、[Stack Overflow](http://stackoverflow.com/questions/tagged/gitlab)などのコミュニティソースを通じて追加サポートを受けられます。\n",[14,781],{"slug":887,"featured":6,"template":679},"a-guide-to-the-breaking-changes-in-gitlab-18-0","content:ja-jp:blog:a-guide-to-the-breaking-changes-in-gitlab-18-0.yml","A Guide To The Breaking Changes In Gitlab 18 0","ja-jp/blog/a-guide-to-the-breaking-changes-in-gitlab-18-0.yml","ja-jp/blog/a-guide-to-the-breaking-changes-in-gitlab-18-0",{"_path":893,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":894,"content":900,"config":906,"_id":908,"_type":16,"title":909,"_source":18,"_file":910,"_stem":911,"_extension":21},"/ja-jp/blog/gitlab-17-11-release",{"title":895,"description":896,"ogTitle":895,"ogDescription":896,"noIndex":6,"ogImage":897,"ogUrl":898,"ogSiteName":770,"ogType":771,"canonicalUrls":898,"schema":899},"GitLab 17.11リリース","GitLab 17.11でリリースした最新機能をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662237/Blog/Hero%20Images/product-gl17-blog-release-cover-17-11-0093-1800x945-fy25.png","https://about.gitlab.com/blog/gitlab-17-11-release","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 17.11リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2025-04-17\",\n      }",{"title":895,"description":896,"authors":901,"heroImage":897,"date":902,"body":903,"category":14,"tags":904,"updatedDate":905},[676],"2025-04-17","## カスタムコンプライアンスフレームワークを搭載したGitLab 17.11をリリース\n\nこのたび、GitLab 17.11をリリースしました。このリリースでは、GitLab Duo Self-Hostedに複数のDuo機能が追加されたほか、カスタムコンプライアンスフレームワーク、サービスアカウントUI、CI/CDパイプライン入力など、さまざまな機能が追加されました！\n\nこれらの機能は、今回のリリースに含まれる60件以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLab 17.11には、GitLabコミュニティのユーザーから284件ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。\n\n来月のリリースで予定されている内容を先取りするには、[今後のリリースページ](https://about.gitlab.com/upcoming-releases/)をご覧ください。\n\n[GitLab 17.11では、カスタムコンプライアンスフレームワークが搭載されました。 クリックしてSNSで共有しましょう！](http://twitter.com/share?text=GitLab+17.11%E3%81%A7%E3%81%AF%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%82%B3%E3%83%B3%E3%83%97%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%82%B9%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF%E3%81%8C%E6%90%AD%E8%BC%89%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82&url=https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/&hashtags=)\n\n## 今月の[注目コントリビューター](https://contributors.gitlab.com/docs/notable-contributors)は[Heidi Berry](https://gitlab.com/heidi.berry)さんです\n\nGitLab 17.11の注目コントリビューターは、[Heidi Berry](https://gitlab.com/heidi.berry)さんに決まりました！\n\nHeidiさんは、[GitLab Terraformプロバイダー](https://gitlab.com/gitlab-org/terraform-provider-gitlab)や[client-go](https://gitlab.com/gitlab-org/api/client-go)プロジェクトのコントリビューターとして活躍してきました。ここ数回のリリースにわたり、[グループSAMLリンクでカスタムロールを使用する機能](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/1949)、[グループ単位でのブランチ保護のデフォルト設定](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2113)、[サービスアカウントトークンの自動ローテーション](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2206)など、要望の多かった機能を継続的に実装してきました。\n\n機能開発にとどまらず、Heidiさんはメンテナンス活動にも積極的に取り組んでおり、[イシューバックログの整理](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/issues/1035#note_2305643918)、[古いテストの可読性向上](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2298)、[よりわかりやすい例を用いたドキュメントの改善](https://gitlab.com/gitlab-org/terraform-provider-gitlab/-/merge_requests/2201)など、多岐にわたる活動を行っています。特にclient-goはTerraformプロバイダーやglabを含む多くのプロジェクトでGitLabとの連携に使われているため、このライブラリへのコントリビュートは非常に価値の高いものです。\n\nHeidiさんはこう語っています。「オープンソースへのコントリビュートに興味のある方には、client-goやterraform-provider-gitlabがおすすめです。スタートにぴったりの優れたドキュメントが用意されていますし、助けてくれるメンテナーもいます。私はこれらのプロジェクトを通して、Go言語を実践的に学ぶことができました。」\n\nHeidiさんは、GitLabコミュニティのコアチームメンバーであり、Kingland社のエンタープライズアーキテクトである、同じくコミュニティコントリビューターの[Patrick Rice](https://gitlab.com/PatrickRice)さんにより推薦されました。Patrickさんは次のように語っています。「17のリリースサイクルを通して100件を超えるマージ済みのコントリビュートと、多くのイシューへのコメントを行ってきたHeidiさんは、GitLabおよびTerraformにとって非常に大きな力となっています。本当にありがとうございます！」\n\nGitLabのDeploy::Environmentsチームのシニアバックエンドエンジニア、[Timo Furrer](https://gitlab.com/timofurrer)も次のように話しています。「Heidiさんの仕事は本当に素晴らしいです。常に一歩先を行き、client-goに必要なSDKコードを実装してくれています。コードのコントリビュートだけでなく、イシューのトリアージにも関わってくれています。これは本当に大きな助けになっていて、こうした支えがあるからこそ、コミュニティ主導のプロジェクトは成り立っていると感じます。」\n\nHeidiさんは、The Co-operative Group社のリードソフトウェアエンジニアとして、デベロッパーエクスペリエンスをより効率的かつ安全に、そして可能な限りスムーズにするために取り組んでいます。\n\nこの場を借りて、GitLabに多大なるコントリビュートをしてくださったHeidiさんに心より感謝します！\n\n\u003Cbr>\n\u003Cbr>\n\u003Cbr>\n\n## GitLab 17.11でリリースされた主な改善点\n\n### 要件やコンプライアンスコントロールでコンプライアンスフレームワークのカスタマイズが可能に\n\nSaaS: Ultimate\nSelf-Managed: Ultimate\n\nこれまで、GitLabのコンプライアンスフレームワークは、特定のコンプライアンス要件や追加の監査が必要なプロジェクトを識別するラベルとして作成されていました。このラベルは、スコープ指定として利用でき、グループ内のすべてのプロジェクトに対してセキュリティポリシーを適用することができました。\n\n今回のリリースでは、コンプライアンスマネージャーがGitLab上でより詳細なコンプライアンスのモニタリングを行えるようにする「要件」を新機能として導入しました。\n\n「要件」は、カスタムコンプライアンスフレームワークの一部として、組織が準拠すべきさまざまなコンプライアンス基準、法律、規制などから、具体的な要件を定義できる機能です。\n\nさらに、コンプライアンスコントロール（従来の「コンプライアンスチェック」）の数を、5種類から50種類以上へと大幅に増やしました！標準搭載された約50種類のコントロールは、定義したコンプライアンス要件に対応付けることができます。\n\nこれらのコントロールは、プロジェクト、セキュリティ、マージリクエストの設定をGitLabインスタンス全体で確認し、SOC2、NIST、ISO 27001、GitLab CISベンチマークといった、さまざまなコンプライアンス基準や法規制への準拠をサポートします。\n\nこうしたコントロールへの準拠状況は、基準遵守レポートに反映されます。このレポートは、要件と、それに対してマッピングされたコントロールの関係を考慮して新たに設計し直されています。\n\nまた、標準搭載のコントロールを増やしただけでなく、GitLabの外部に存在する項目、プログラム、システムなどに対して、要件を外部コントロールとしてマッピングできるようになりました。これにより、GitLabのコンプライアンスセンターを信頼できる唯一の情報源として使用して、より包括的なコンプライアンス管理が可能となります。\n\n[ドキュメント](https://docs.gitlab.com/user/compliance/compliance_center/compliance_status_report/)\n\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13295)\n\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13658)\n\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16620)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/custom_compliance_frameworks.png\">\n\n### GitLab Eclipseプラグインがベータ版として利用可能に\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nGitLab Eclipseプラグインのベータ版をリリースしました。このプラグインは現在[Eclipse マーケットプレース](https://marketplace.eclipse.org/content/gitlab-eclipse)で入手可能です。この強力な新プラグインにより、GitLabのDuo機能をEclipse IDEに直接統合でき、Duo ChatやAIによるコード提案をスムーズに利用できるようになります。\n\n現在ベータ版のため、認証オプションの拡充やユーザーエクスペリエンスの最終調整など、機能改善を積極的に進めています。皆様のフィードバックは非常に貴重です。ぜひ、[イシュー162](https://gitlab.com/gitlab-org/editor-extensions/gitlab-eclipse-plugin/-/issues/162)にコメントを追加して、GitLab Eclipseプラグインをより良いものにするためのフィードバックをお聞かせください。\n\n[ドキュメント](https://docs.gitlab.com/editor_extensions/eclipse/setup/)\n[エピック](https://gitlab.com/groups/gitlab-org/editor-extensions/-/epics/89)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/eclipse-beta.png\">\n\n### GitLab Duo Self-Hostedで、さらに多くのGitLab Duo機能が利用可能に\n\nSaaS: -\nSelf-Managed: Ultimate、Duo Enterprise\n\nGitLab Self-Managedインスタンスで、GitLab Duo Self-Hostedを使用してさらに多くの[GitLab Duo](https://about.gitlab.com/gitlab-duo/)機能を利用できるようになりました。以下の機能がベータ版として利用できます。\n\n* [根本原因分析](https://docs.gitlab.com/user/gitlab_duo_chat/examples/#troubleshoot-failed-cicd-jobs-with-root-cause-analysis)\n* [脆弱性の説明](https://docs.gitlab.com/user/application_security/vulnerabilities/#explaining-a-vulnerability)\n* [脆弱性の修正](https://docs.gitlab.com/user/application_security/vulnerabilities/#vulnerability-resolution)\n* [AIインパクトダッシュボード](https://docs.gitlab.com/user/analytics/ai_impact_analytics/)\n* [ディスカッションサマリー](https://docs.gitlab.com/user/discussions/#summarize-issue-discussions-with-duo-chat)\n* [マージリクエストのコミットメッセージ](https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#generate-a-merge-commit-message)\n* [マージリクエストサマリー](https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#generate-a-description-by-summarizing-code-changes)\n* [CLI用GitLab Duo](https://docs.gitlab.com/editor_extensions/gitlab_cli/#gitlab-duo-for-the-cli)\n\n[コードレビューサマリー](https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#summarize-a-code-review)も、実験的にGitLab Duo Self-Hostedで利用可能です。\n\n[ドキュメント](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/#supported-gitlab-duo-features)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/17072)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/ResizedExpandedDuoFeaturesImage.jpg\">\n\n### Self-Managedインスタンス向けWeb IDEで拡張機能マーケットプレイスが利用可能に\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nSelf-Managedユーザー向けのWeb IDEに拡張機能マーケットプレースが登場しました。拡張機能マーケットプレースでは、サードパーティの拡張機能を検索、インストール、管理できるため、快適な開発環境で効率的に作業できるようになります。\n\nデフォルトでは、GitLabインスタンスはOpen VSX拡張機能レジストリを使用するように構成されています。この機能を有効化するには、[デフォルトの拡張機能レジストリを使って有効にする](https://docs.gitlab.com/administration/settings/vscode_extension_marketplace/#enable-with-default-extension-registry)手順を参照してください。\n\nまた、独自のレジストリやカスタムレジストリを使用したい場合は、[カスタム拡張レジストリを接続することも可能です](https://docs.gitlab.com/administration/settings/vscode_extension_marketplace/#customize-extension-registry)。これにより、利用可能な拡張機能の管理にさらなる柔軟性が生まれます。\n\n拡張機能マーケットプレースを有効にした後でも、各ユーザーは個別に利用を有効化する必要があります。有効化は、[環境設定](https://gitlab.com/-/profile/preferences)の「インテグレーション」セクションで行えます。\n\nなお、一部の拡張機能はローカルの実行環境を必要とし、Web専用バージョンでは使用できないものがあります。それでも、数千種類の中から自由に拡張機能を選び、生産性向上やワークフローのカスタマイズに活用できます。\n\n[ドキュメント](https://docs.gitlab.com/administration/settings/vscode_extension_marketplace/)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/11770)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/extension-marketplace-sm.png\">\n\n### GitLab Duo with Amazon Qの一般提供を開始\n\nSaaS: -\u003Cbr>\nSelf-Managed: Ultimate\n\nGitLab Duo with Amazon Qの一般提供を開始しました。GitLab Duo with Amazon Qは、AIを搭載したGitLabの包括的なDevSecOpsプラットフォームと自律型Amazon Q AIアシスタントを一つの統合ソリューションとして提供する共同サービスです。GitLab Duo with Amazon Qは開発ワークフローに直接AIアシスタントを組み込むことで、デベロッパーが作業環境を行き来する必要がなくなり、結果として主要タスクのスピードアップを実現します。これらのAIアシスタントはGitLab DevSecOpsプラットフォーム内で高度な知能を持つパートナーとして機能し、コード生成、テスト、レビュー、Javaモダナイゼーションなどの時間のかかる作業を自動化します。これにより、チームはセキュリティと品質基準を維持しながら、より革新的な業務に集中できるようになります。\n\nGitLab Duo with Amazon Qは開発チームに次のような大きなメリットをもたらします：\n\n* アイデアからコードまでの機能開発を効率化：`/q dev`コマンドを使えば、イシューの説明文から数分でマージ可能なコードを直接生成できます。\n* 手間なくレガシーコードを最新化：`/q transform`コマンドでJavaコードの最新化プロセス全体を自動化します。\n* 品質を落とさずコードレビューを迅速化：`/q review`コマンドを使用すれば、マージリクエスト内で即座にコード品質とセキュリティに関する的確なフィードバックが得られます。\n* 安心してリリースするためのテスト自動化：`/q test`コマンドで、アプリケーションのロジックを理解した包括的な単体テストを生成します。\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/Duo_Q1.png\">\n\n[ドキュメント](https://docs.gitlab.com/user/duo_amazon_q/)\n\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16879)\n\n### 保護されたコンテナタグによるセキュリティ強化\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nコンテナレジストリは、現代のDevSecOpsチームにとって重要なインフラストラクチャです。これまで、GitLabのデベロッパー権限以上のユーザーであれば、どのコンテナタグにもプッシュおよび削除が可能であり、本番環境で使用される重要なコンテナイメージが誤って変更されたり、不正に変更されたりするリスクがありました。\n今回導入された、保護されたコンテナタグにより、特定のコンテナタグをプッシュまたは削除できるユーザーを細かく制御できるようになりました。具体的には、以下のことが可能です。\n\n* プロジェクトごとに最大5件の保護ルールを作成\n* `latest`、セマンティックバージョン（例：`v1.0.0`）、安定版タグ（例：`main-stable`）のようなタグを、RE2正規表現パターンで保護\n* プッシュ操作と削除操作をメンテナー、オーナー、または管理者に制限\n* クリーンアップポリシーによる保護タグの削除防止\n\nこの機能を利用するには、次世代コンテナレジストリが必要です。このレジストリはGitLab.comではすでにデフォルトで有効になっていますが、GitLab Self-Managedインスタンスで保護されたコンテナタグを使用するには、[メタデータデータベース](https://docs.gitlab.com/administration/packages/container_registry_metadata_database/)を有効にする必要があります。\n\n[ドキュメント](https://docs.gitlab.com/user/packages/container_registry/protected_container_tags/)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/523893)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/Xo5n-lZSSRg?si=_JP6dL_s04fwp60V\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### 保護されたMavenパッケージでレジストリを安全に\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\n本リリースでは、Mavenの保護パッケージが新たにサポートされました。この機能は、GitLabパッケージレジストリのセキュリティと安定性を強化することを目的として設計されました。パッケージの誤った変更は、開発プロセス全体に大きな影響を及ぼす可能性があります。保護パッケージ機能を使うことで、意図せぬ変更を防いで重要な依存関係を守ることができます。\n\nGitLab 17.11では、保護ルールを作成してMavenパッケージを保護できるようになりました。保護ルールの条件に合致したパッケージは、許可された特定のユーザーのみが新しいバージョンをプッシュできます。パッケージ保護ルールによって、意図しない上書きの防止、規制要件へのコンプライアンス強化、手動モニタリングの必要性の軽減を実現できます。\n\nこのMavenパッケージの[保護機能](https://gitlab.com/groups/gitlab-org/-/epics/5574)やその他のパッケージフォーマットへの対応は、`gerardo-navarro`さんとSiemens社チームによるコミュニティからのコントリビュートによって実現しました。この場を借りて、GitLabに多大なるコントリビュートをしてくださったGerardoさんをはじめ、Siemens社のみなさまに感謝します！この変更に対するGerardoさんとSiemens社の方々のコントリビュートについて、詳しくはこちらの[動画](https://www.youtube.com/watch?v=5-nQ1_Mi7zg)をご覧ください。Gerardoさんが、外部のコントリビューターとしてGitLabにコントリビュートした経験から得た洞察やベストプラクティスを紹介してくださっています。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/packages/package_registry/package_protection_rules.html)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/323969)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/GeCXDespqeM?si=44JAVztwQr5UQ5bW\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### エピック、イシュー、タスク用のカスタムフィールド\n\nSaaS: Premium、Ultimate\nSelf-Managed: Premium、Ultimate\n\nこのリリースから、イシュー、エピック、タスク、目標、および主な結果に対して、テキスト、数値、単一選択、および複数選択のカスタムフィールドを設定できるようになりました。これまでは、ラベルが作業アイテムを分類する主な方法でしたが、カスタムフィールドを使うことで、よりユーザーフレンドリーな形で、計画アーティファクトに構造化されたメタデータを追加できます。\n\nカスタムフィールドは、トップレベルグループで設定され、すべてのサブグループおよびプロジェクトに反映されます。また、フィールドは1つ以上の作業アイテムタイプにマッピング可能で、カスタムフィールドの値を使ってイシューやエピックの一覧を絞り込むこともできます。\n\n[ドキュメント](https://docs.gitlab.com/user/work_items/custom_fields/)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14904)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/work-items-custom-fields.png\">\n\n### 新しいイシュー画面の一般提供を開始\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nこのリリースより、新しいイシュー画面の一般提供が開始され、従来のイシュー画面に取って代わります。イシューはエピックやタスクと共通のフレームワークを使用するようになり、リアルタイムで更新されるとともに、ワークフローが改善されました。\n\n* **ドロワー表示：**\n\n  リストやボードのアイテムをドロワーで開いて、現在の画面から離れることなく素早く内容を閲覧できます。上部のボタンで全ページ表示に切り替わります。\n\n* **タイプの変更：**\n\n  「種類の変更」アクション（従来の「エピックへの昇格」）を使用して、エピック、イシュー、タスク間でタイプを変換できるようになりました。\n\n* **開始日：**\n\n  イシューで開始日がサポートされるようになり、エピックやタスクと機能が統一されました。\n\n* **祖先：**\n\n  タイトルの上とサイドバーの親フィールドに完全な階層が表示されます。関係の管理には、新しいクイックアクションコマンド`/set_parent`、`/remove_parent`、`/add_child`、`/remove_child`を使用できます。\n\n* **操作メニュー：**\n\n  すべてのアクションに上部のメニュー（縦方向の3点ドット）からアクセスできるようになりました。スクロールした場合でも消えずにヘッダーに表示されます。\n\n* **開発：**\n\n  イシューやタスクに関連するすべての開発アイテム（マージリクエスト、ブランチ、機能フラグ）が1つの便利なリストに統合されました。\n\n* **レイアウト：**\n\n  UIが改善され、イシュー、エピック、タスク、マージリクエスト間の移動がスムーズになり、より効率的にワークフローを進められるようになりました。\n\n* **リンクされたアイテム：**\n\n  改善されたリンクオプション機能で、タスク、イシュー、エピック間の関連付けが簡単になりました。ドラッグ＆ドロップでリンクのタイプを変更したり、ラベルや完了したアイテムの表示/非表示を切り替えたりできます。\n\n[ドキュメント](https://docs.gitlab.com/user/project/issues/issue_work_items/)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/525547)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/_jrnkD69KGw?si=nZojuQeVuJwvO5S0\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### サービスアカウントのUI\n\nSaaS: Premium、Ultimate\nSelf-Managed: Premium、Ultimate\n\nGitLabのUI上に、サービスアカウントの作成と管理に特化した専用画面が追加されました。このインターフェースを使用すると、GitLabリソースへの自動アクセスを作成、モニタリング、制御できます。これまでは、この機能はAPI経由でしか利用できませんでした。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/service_accounts.html)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/9965)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/ujX_yzmOMCQ?si=CBpg2LdWLEgWHf-E\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### Duo ProとDuo Enterpriseシートの自動割り当て\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nSAMLグループ同期を使用して、GitLab Duo ProやGitLab Duo Enterpriseのシートを自動的にユーザーに割り当てられるようになりました。GitLabグループに利用可能なDuo ProまたはDuo Enterpriseのシートが残っている限り、IDプロバイダ（IdP）からマッピングされたユーザーに自動的にシートが割り当てられます。これにより、シートの割り当てを管理する手間を抑えられます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/saml_sso/group_sync.html#gitlab-duo-seat-assignment)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/502496)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/govern_duo_saml.png\">\n\n### CI/CDパイプライン入力\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nCI/CD変数は動的なCI/CDワークフローには欠かせない要素で、環境変数、コンテキスト変数、ツールの設定、マトリックス変数など、さまざまな用途で使用されています。しかし、デベロッパーはCI/CD変数を使って[パイプライン変数](https://docs.gitlab.com/ci/variables/#use-pipeline-variables)をパイプラインに注入し、パイプラインの動作を手動で変更することがあります。これは、パイプライン変数の優先度が他の変数よりも高いため、予期しない影響を及ぼすリスクがあります。\n\nGitLab 17.11から、パイプライン変数の代わりに`inputs`機能を使って、安全にパイプラインの挙動を変更できるようになりました。この機能は、スケジュールされたパイプライン、ダウンストリームパイプライン、トリガーされたパイプラインなど、さまざまなケースで利用可能です。inputsを使うことで、デベロッパーがCI/CDジョブの実行中に動的な内容（状況に応じて変化する情報）を組み込む作業が、より構造化され柔軟に行えるようになります。inputsに切り替えた後、[パイプライン変数へのアクセスを完全に無効化する](https://docs.gitlab.com/ci/variables/#restrict-pipeline-variables)ことも可能です。\n\nぜひお試しの上、専用の[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/533802)からフィードバックをお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/ci/inputs/#for-a-pipeline)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16321)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/run_new_pipeline_spec_input.png\">\n\n## GitLab 17.11のリリースに含まれるその他の改善点\n\n### 自動で無効化されたすべてのWebhookを自動で再有効化\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nこのリリースでは、`4xx`エラーを返すWebhookが自動的に再有効化されるようになりました。すべてのエラー（`4xx`、`5xx`、またはサーバーエラー）が同じように処理されるため、動作がより予測可能になり、トラブルシューティングが容易になります。この変更については、[こちらブログ投稿](https://about.gitlab.com/blog/gitlab-webhooks-get-smarter-with-self-healing-capabilities/)で詳しく解説しています。\n\n失敗したWebhookは、一時的に1分間無効になり、最大24時間まで延長されます。Webhookが40回連続して失敗すると、永久に無効になります。\n\nGitLab 17.10以前で永久に無効にされたWebhookは、データの移行が行われました。\n\n* GitLab.comの場合、これらの変更は自動的に適用されます。\n* GitLab Self-ManagedおよびGitLab Dedicatedの場合、これらの変更は、`auto_disabling_webhooks`の`ops`フラグが有効になっているインスタンスにのみ影響します。\n\nこの場を借りて、[コミュニティにコントリビュート](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/166329)してくれた[Phawin](https://gitlab.com/lifez)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/user/project/integrations/webhooks/#auto-disabled-webhooks)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/396577)\n\n### インポート時にGhostユーザーのコントリビュートを自動マッピング\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nこれまで、Ghostユーザーのコントリビュートはプレースホルダー参照として作成され、手動での再アサインを必要とし、移行作業に余分な手間がかかっていました。今回の改善により、[新しいコントリビュートおよびメンバーシップのマッピング機能](https://docs.gitlab.com/user/project/import/#user-contribution-and-membership-mapping)を使用するインポーター（たとえば、直接転送による移行や、GitHub、Bitbucket Server、Giteaのインポーター）では、Ghostユーザーのコントリビュートをより効率的に処理できるようになりました。コンテンツをGitLabにインポートする際、移行元インスタンスでGhostユーザーが行ったコントリビュートが、移行先インスタンスのGhostユーザーに自動的にマッピングされます。\n\nこの機能強化により、Ghostユーザーのコントリビュートに対して不要なプレースホルダーユーザーが作成されなくなり、ユーザーマッピング画面の煩雑さが減り、移行プロセス全体が簡素化されました。\n\n[ドキュメント](https://docs.gitlab.com/user/project/import/#user-contribution-and-membership-mapping)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/514014)\n\n### GitLab.comへのインポート時におけるコントリビュートの再アサインにSAML認証が追加\n\nSaaS: Premium、Ultimate\nSelf-Managed: Premium、Ultimate\n\nこのマイルストーンでは、GitLab.comにインポートする際、コントリビュートの再アサインプロセスにSAML認証チェックを追加しました。これらのチェックにより、SAML SSOが有効なグループで発生していた再アサインエラーを防止できるようになりました。\n\nGitLab.comにインポートし、GitLab.comグループでSAML SSOを使用する場合、すべてのユーザーは、コントリビュートとメンバーシップを再アサインする前に、SAML IDをGitLab.comアカウントにリンクする必要があります。SAML IDが認証されていないユーザーにコントリビュートを再アサインすると、エラーメッセージが表示されます。これらのメッセージでは、グループメンバーシップを正しく割り当てるための手順が説明されています。\n\n[ドキュメント](https://docs.gitlab.com/user/project/import/#requirements)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/513686)\n\n### Wikiサイドバーのスタイルを改善\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nカスタムWikiサイドバーのスタイルが改善され、見出しサイズが小さくなり、リストの左側の余白も調整されました。こうした視認性を高める改善により、`_sidebar wiki`ページで作成されたカスタムナビゲーションの読みやすさが向上しました。\n\nカスタムサイドバーは、チームが独自のナレッジベース構造に合わせてWikiコンテンツを整理するのに役立ちます。このスタイルの更新により、サイドバーが見やすくなり、視覚的な階層構造がより明確になり、チームメンバーが必要な情報を見つけやすくなりました。\n\n[ドキュメント](https://docs.gitlab.com/user/project/wiki/#customize-sidebar)\n[マージリクエスト](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/185678)\n\n### 作業中の上限をウェイトで設定\n\nSaaS: Premium、Ultimate\nSelf-Managed: Premium、Ultimate\n\nイシューの数に加えて、作業中の上限をウェイトで設定できるようになりました。これにより、チームのワークロードをより柔軟に管理できます。\n\nイシューの数だけでなく、各タスクの複雑さや作業量に基づいて作業の流れをコントロールできます。作業量をイシューのウェイトで表しているチームは、特定のボードリスト内のイシューの合計ウェイトを制限することで、チームに負担がかかりすぎるのを防げます。\n\nこの機能を活用することで、チームの生産性を最適化し、さまざまなタスクの複雑さを考慮した、よりバランスの取れたワークフローを実現できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/issue_board.html#work-in-progress-limits)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/119208)\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/allow_users_to_set_work_in_progress_limits_by_weight.png\">\n\n### キャンセル状態でスタックしたCI/CDジョブを強制キャンセル\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nCI/CDジョブが「キャンセル中」状態でスタックし、デプロイや共有リソースへのアクセスをブロックすることがあります。\n\nメンテナーの[ロール](https://docs.gitlab.com/user/permissions/)を持つユーザーは、ジョブログページから直接これらの停止したジョブを強制キャンセルできるようになりました。これにより、問題のあるジョブを適切に終了できるようになります。\n\n[ドキュメント](https://docs.gitlab.com/ci/jobs/#force-cancel-a-job)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/467107)\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/force-cancel-stuck-jobs.png\">\n\n### 失敗したジョブが一目でわかるパイプラインビュー\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\n新しい表示機能により、パイプライングラフで失敗したジョブをすばやく識別できるようになりました。失敗したジョブグループはパイプライングラフで強調表示され、失敗したジョブは各ステージの上部にグループ化されます。複雑なパイプライン構造を隅々まで調べなくても、問題のあるジョブを素早く特定してトラブルシューティングができるようになりました。\n[ドキュメント](https://docs.gitlab.com/ci/pipelines/#view-pipelines)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/512300)\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/failed-jobs-pipeline-graph.png\">\n\n### 依存プロキシのDocker Hub認証UIが登場\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nGitLab依存プロキシにおいて、Docker Hub認証をUIから設定できるようになりました。この機能はもともとGitLab 17.10でGraphQL APIを通じてのみ利用可能でしたが、今回のリリースで、より簡単に設定できるユーザーインターフェースが追加されました。\n\nこの機能強化により、グループ設定ページから直接Docker Hub認証を設定できるようになり、以下のことが可能になりました。\n\n* レート制限によるパイプラインの失敗を回避\n* プライベートなDocker Hubイメージへのアクセス\n* Docker Hubの認証情報、[パーソナルアクセストークン](https://docs.docker.com/security/for-developers/access-tokens/)、または[組織アクセストークン](https://docs.docker.com/security/for-admins/access-tokens/)を安全に保存\n\nこの効率化されたアプローチにより、GraphQL APIを使用せずに、CI/CDパイプラインでDocker Hubイメージに安定してアクセスできるようになりました。\n\n### Kubernetes 1.32のサポートを追加\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nこのリリースでは、2024年12月にリリースされたKubernetesバージョン1.32に対するフルサポートが追加されました。アプリケーションをKubernetesにデプロイしている場合は、接続中クラスターを最新バージョンにアップグレードすることで、Kubernetes 1.32が提供する機能をすべて活用できるようになります。\n\n[Kubernetesサポートポリシーとその他のサポートされているKubernetesバージョン](https://docs.gitlab.com/ee/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features)の詳細については、ドキュメントをご覧ください。\n\n###  反射型XSSチェックのための動的解析機能を追加\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\nGitLabの動的解析チームが、[CWE-79](https://cwe.mitre.org/data/definitions/79.html)に対応する新しいチェック機能を導入しました。これにより、DASTスキャナーは反射型XSS（クロスサイトスクリプティング）攻撃を検出できるようになりました。\n\n反射型XSSのチェック機能はデフォルトで有効になっています。このチェックを無効にするには、設定ファイルに`DAST_FF_XSS_ATTACK: false`を追加してください。ご質問やフィードバックがある場合は、[イシュー525861](https://gitlab.com/gitlab-org/gitlab/-/issues/525861)を参照してください。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/dast/browser/checks/)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/525861)\n\n### Python対応の静的到達性解析のベータ版を提供開始\n\nSaaS: Ultimate\nSelf-Managed: Ultimate\n\nコンポジション解析チームは、Python向け静的到達性解析のベータ版をリリースしました。このベータ版では、安定性、可観測性の向上に焦点を当て、より簡単な設定で優れたユーザーエクスペリエンスを提供します。\n\n静的到達性解析は、ソフトウェアコンポジション解析（SCA）で得られる結果をより充実させてくれる機能です。静的到達性解析では、GitLabの高度なSASTを活用し、プロジェクトのソースコードをスキャンして使用中のオープンソースの依存関係を特定します。\n\nトリアージや修正に関する意思決定を行う上で、静的到達性機能によって生成されたデータを活用できます。また、静的到達可能性データを共通脆弱性評価システム（CVSS）スコアや悪用予測スコアリングシステム （EPSS)、悪用されている既知の脆弱性（KEV）と併用することで、より焦点を絞って脆弱性を確認することも可能です。\n\nこの機能に関するフィードバックをお待ちしています。ご質問やご意見のある方、またはGitLabチームとのやり取りをご希望の場合は、こちらの[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/535498)をご覧ください。\n\n### 依存関係リストと脆弱性レポートのエクスポートに関するメール配信\n\nSaaS: Ultimate\nSelf-Managed: Ultimate\n\nこれまで、依存関係リストや脆弱性レポートをエクスポートする場合、レポートをダウンロードするにはエクスポートが完了するまでページを開いたままにする必要がありました。\n\n今回の改善により、依存関係リストまたは脆弱性レポートのエクスポートが完了すると、ダウンロードリンクが記載されたメールで通知が届くようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/dependency_list/#download-the-dependency-list)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/513149)\n\n### CI/CDジョブの`source` 値を保存してフィルタリングする\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nGitLab 17.11では、CI/CDジョブのソース属性を追跡することで、ユーザーがビルドアーティファクトのソースを確認できる新機能が導入されました。この機能は特に、セキュリティ対策やコンプライアンス対応を求められるワークフローで役立ちます。たとえば、組織はソフトウェアサプライチェーンのセキュリティ対策を実装したり、コンプライアンス目的でセキュリティスキャンの検証可能な証拠を要求したりできます。\n\nGitLabのジョブは、発生源を識別する以下の`source`値を保存して表示するようになりました。\n\n* スキャン実行ポリシー\n* パイプライン実行ポリシー\n* 通常のパイプライン\n\n`source`属性には、ビルド   \\> ジョブページの新しいフィルターオプション、ジョブAPI、またはアーティファクト検証用のIDトークンクレームを通じて確認できます。\n\nこの新機能により、次のことができるようになりました。\n\n* セキュリティスキャン結果の信頼性を検証\n* ソースの種類でジョブを絞り込むことで、ポリシーによって実行されたスキャンをすばやく特定\n* 新しいIDトークンクレームを使用した、アーティファクトの暗号化検証を実装\n* 適切な監査証跡により、コンプライアンス要件が満たされていることを確認\n\nセキュリティチームやコンプライアンスチームは、この機能を活用して以下を行えます。\n\n* ジョブページの新しいフィルターを使用して、ポリシーによって実行されたジョブのみを表示\n* ジョブAPIの`source`フィールドにアクセスしてタスクを自動化\n* 新しいIDトークンクレームを使用して、アーティファクトの検証を実装\n  * `job_source`：ジョブの発生源を識別します\n  * `job_policy_ref_uri`：ポリシーファイルを指します（ポリシー定義のジョブの場合）\n  * `job_policy_ref_sha`：ポリシーのgitコミットSHAを含みます\n\n[ドキュメント](https://docs.gitlab.com/api/jobs/#view-the-source-of-a-job)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/11796)\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/scan_execution_policy_job_source_filter.png\">\n\n### コンプライアンスフレームワークの作成時にプロジェクトを割り当て可能に\n\nSaaS: Premium、Ultimate\nSelf-Managed: Premium、Ultimate\n\nこれまでは、コンプライアンスフレームワークを作成した後、コンプライアンスセンターのプロジェクトタブに移動しないと、新しいコンプライアンスフレームワークをプロジェクトに割り当てることができませんでした。このプロセスは、グループで新しいフレームワークを作成する際に余計な混乱を生む原因となっていました。\n\nGitLab 17.11では、コンプライアンスフレームワークを作成するプロセスに新しい手順が追加され、作成前に複数のプロジェクトをコンプライアンスフレームワークに割り当てられるようになりました。\n\nこの新機能により以下が実現します。\n\n* コンプライアンスフレームワークのスムーズな作成\n* コンプライアンスフレームワークがグループ内のプロジェクトと連携し、グループ全体のコンプライアンス遵守状況を監視・管理する仕組みについての理解を深めるガイダンスを提供\n\n[ドキュメント](https://docs.gitlab.com/user/compliance/compliance_frameworks/#apply-a-compliance-framework-to-a-project)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/500520)\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/provide_option_to_add_projects_in_compliance_creation_workflow.png\">\n\n### サービスアカウント管理画面でのトークン統計表示\n\nSaaS: Premium、Ultimate\nSelf-Managed: Premium、Ultimate\n\nサービスアカウントのトークン管理インターフェイスに、トークンの状況を一目で把握できる便利な統計ダッシュボードが追加されました。この機能は、トークンの状態を評価し、注意が必要なトークンを特定するのに役立ちます。統計ダッシュボードには、次の4つの主要なメトリクスが含まれます。\n\n\\- 有効なトークン：現在使用中のトークンの総数を表示します\n\\- 2週間以内に期限が切れるトークン：今後2週間で期限切れとなるトークンを特定します\n\\- 取り消したトークン：手動で取り消されたトークンを追跡します\n\\- 期限切れトークン：以前に期限切れとなったトークンを監視します\n\nこの場を借りて、コントリビュートしてくれた[Chaitanya Sonwane](https://gitlab.com/chaitanyason9)さんに感謝します！![Token statistics for service account management][image6]\n\n[ドキュメント](https://docs.gitlab.com/user/profile/service_accounts/)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/520472)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/expiring_token_cards.png\">\n\n### GitLab Duo Chatとコード提案でLlama 3モデルが一般提供開始\n\nSaaS: -\u003Cbr>\nSelf-Managed: Ultimate、Duo Enterprise\n\nLlama 3モデルがGitlab Duo Self-Hostedで一般提供され、GitLab Duo Chatとコード提案をサポートできるようになりました。\n\nこれらのモデルをGitLab Duo Self-Hostedで使用する際のフィードバックについては、[イシュー523918](https://gitlab.com/gitlab-org/gitlab/-/issues/523918)を参照してください。\n\n[ドキュメント](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15678)\n\n### 管理者エリアでプレースホルダーユーザーをフィルタリング可能に\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nこれまで、インポート中に作成されたプレースホルダーユーザーは、管理者エリアのユーザーページで明確に区別されず、通常のユーザーと混在して表示されていました。\n\n本リリースから、管理者は管理者エリアのユーザーページの検索ボックスからプレースホルダーアカウントを絞り込めるようになりました。これを行うには、ドロップダウンリストで`タイプ`を選択し、`プレースホルダー`を選択します。\n\n[ドキュメント](https://docs.gitlab.com/administration/admin_area/#administering-users)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/521974)\n\n###  グループの使用量割り当てにプレースホルダーユーザー制限を表示\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nGitLab.comへのインポートの場合、プレースホルダーユーザーはトップレベルグループごとに制限されています。これらの制限は、GitLabライセンスとシート数によって異なります。 本リリースから、トップレベルグループのプレースホルダーユーザーの使用状況と制限をUIで確認できるようになりました。\n以下の手順で現在の使用状況と制限を表示できます。\n\n1. 左側のサイドバーで、「Search or go to...」を選択してグループを検索します。このグループはトップレベルである必要があります。\n2. 設定 \\> 使用量割り当てを選択します。\n\n3. 「インポート」タブを選択します。\n\n[ドキュメント](https://docs.gitlab.com/user/project/import/#placeholder-user-limits)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/486691)\n\n### GLQLビューで最後のコメントを列として表示可能に\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nGLQLビューで、イシューまたはマージリクエストの最後のコメントを列として表示できるようになりました。GLQLクエリにlastCommentをフィールドとして含めることで、作業中の画面から移動せずに最新の更新を確認できます。\n\nこれまでは、最後のコメントを確認するために各イシューまたはマージリクエストを個別に開く必要があり、時間がかかる上に、進捗状況の全体像をすばやく把握することが困難でした。この改善により、進行中の会話やステータス更新が一目でわかるようになり、チームの作業効率向上に役立ちます。\n\nこの機能強化ならびにGLQLビュー全般に関するフィードバックは、[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509791)からお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/user/glql/fields/#last-comment)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/512154)\n\n### GitLab Pages用のNuxtプロジェクトテンプレートが登場\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nGitLabは、最も人気のある静的サイトジェネレーター（SSG）のテンプレートを提供していますが、この度、Vue.js上に構築された強力なフレームワークであるNuxtを使用したGitLab Pagesサイトを作成できるようになりました。Nuxtは、設定の手間を減らしながらモダンで高性能なWebアプリケーションをビルドしたいチームにとって特に有用です。\n\nこの新機能により、初期のセットアップと設定に時間をかけることなく、CI/CDパイプラインと最新の開発体験を組み込んだPagesサイトをすばやく起動するオプションが増えました。\n\n[ドキュメント](https://docs.gitlab.com/user/project/pages/getting_started/pages_new_project_template/)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/461603)\n\n### インポートされたファイルをコード提案のコンテキストとして使用可能に\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nGitLab Duoコード提案で、IDEにインポートされたファイルをコンテキストとして活用できるようになり、コード提案の品質が進化しました。インポートされたファイルはプロジェクトに関する追加のコンテキストを提供し、より適切な提案を可能にします。現在、インポートファイルのコンテキストは、JavaScriptファイルとTypeScriptファイルに対応しています。\n\n### GitLab Runner 17.11\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nこのたび、GitLab Runner 17.11もリリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドのエージェントです。GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。\n新機能：\n\n* [GitLab RunnerのWindows実行可能ファイルにコード署名を追加](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/2483)\n\nバグ修正：\n\n* [GitLab Runner 17.10.0でGit設定をクリーニングするとエラーが発生する](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38681)\n* [`FF_DISABLE_UMASK_FOR_KUBERNETES_EXECUTOR`フラグが`umask`コマンドを無効にしない](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38382)\n\nすべての変更の一覧は、GitLab Runnerの[変更履歴](https://gitlab.com/gitlab-org/gitlab-runner/blob/17-11-stable/CHANGELOG.md)で確認できます。\n\n[ドキュメント](https://docs.gitlab.com/runner/)\n\n### プロジェクトにおけるRunner管理の改善\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nプロジェクトでRunnerをより効率的に管理できるようになりました。Runnerは、従来の2列のビューではなく、1列のレイアウトで表示され、それぞれが独自のリストとして整理されるようになりました。\n\nこの構成の改善により、Runnerの検索と管理が簡素化され、割り当てられたプロジェクトの一覧、Runnerマネージャー、およびRunnerが実行したジョブなどの新機能が追加されました。GitLab 18.0で計画されているその他のRunner管理の改善については、[イシュー33803](https://gitlab.com/gitlab-org/gitlab/-/issues/33803)を参照してください。\n\n[ドキュメント](https://docs.gitlab.com/ci/runners/runners_scope/#project-runners)\n[マージリクエスト](https://release-17-11.about.gitlab-review.app/releases/2025/04/17/gitlab-17-11-released/%5B%22https://gitlab.com/gitlab-org/gitlab/-/merge_requests/185232%22,%20%22https://gitlab.com/gitlab-org/gitlab/-/merge_requests/186963%22%5D)\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/runner-project-redesign.png\">\n\n### スイッチボードで複数のIDプロバイダ（IdP）を使用したSAMLシングルサインオンに対応\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: -\n\nGitLab Dedicatedインスタンスにおいて、最大10個のIDプロバイダ（IdP）を使ったSAMLシングルサインオン（SSO）の設定が可能に\nなりました。\n\nGitLab Dedicatedインスタンスで利用可能なすべてのSAML設定オプションは、個々のIdPごとに設定できます。\n\n以前に複数のIdPを設定していた場合も、すべての既存SAML設定をスイッチボードで直接表示および編集できるようになりました。\n\n![Configure SAML single sign-on with multiple identity providers in Switchboard][image8]\n\n[ドキュメント](https://docs.gitlab.com/administration/dedicated/configure_instance/saml/)\n[Webページ](https://release-17-11.about.gitlab-review.app/releases/2025/04/17/gitlab-17-11-released/%5B%22https://about.gitlab.com/direction/platforms/dedicated/#theme-feature-parity%22%5D)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/switchboard-multiple-idp.png\">\n\n### イベントデータの共有をデプロイ前に無効にできる機能を追加\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nGitLab 18.0では、GitLab Self-ManagedおよびGitLab Dedicatedインスタンスからイベントレベルの製品使用状況データの収集を有効にする予定です。集計データとは異なり、イベントレベルのデータを収集することでより詳細な利用状況を把握できるようになります。こうしたデータは、GitLabがプラットフォーム上のユーザーエクスペリエンスを向上させ、機能活用を促進させるのに役立ちます。\n\nGitLab 17.11から、上記のイベントデータ収集が始まる前に、あらかじめその機能を無効に設定することが可能になりました。オプトアウト方法の詳細については、ドキュメントを参照してください。\n\n[ドキュメント](https://docs.gitlab.com/administration/settings/event_data/)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/510333)\n\n### シークレットプッシュ保護とパイプラインシークレット検出のルールカバレッジを拡大\n\nSaaS: Ultimate\nSelf-Managed: Ultimate\n\nGitLabシークレット検出機能が大幅に更新され、17件の新しいシークレットプッシュ保護ルールと12件の新しいパイプラインシークレット検出ルールが追加されました。また、既存のルールの一部も更新され、検出精度の向上と誤検知の削減が図られています。詳細については、[変更履歴](https://gitlab.com/gitlab-org/security-products/secret-detection/secret-detection-rules/-/blob/main/CHANGELOG.md#v090)のv0.9.0を参照してください。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/secret_detection/detected_secrets)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/534106)\n\n### プロジェクト依存関係リストをCycloneDX形式でエクスポート可能に\n\nSaaS: Ultimate\nSelf-Managed: Ultimate\n\n多くの組織は現在、規制要件を満たし、ソフトウェアサプライチェーンのセキュリティをさらに強化するために、ソフトウェア部品表（SBOM）が求められるようになりました。以前は、GitLabでは依存関係リストのエクスポート形式がJSONもしくはCSVに限られていましたが、今回から業界標準のCycloneDX形式でエクスポートできるようなり、SBOMの生成が可能になりました。\nSBOMをCycloneDX形式で依存関係リストから直接ダウンロードするには、**エクスポート** \\> **CycloneDX（JSON）としてエクスポートする**を選択します。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/dependency_list/#download-the-dependency-list)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/524733)\n\n### 依存関係リストをCSV形式でエクスポート可能に\n\nSaaS: Ultimate\nSelf-Managed: Ultimate\n\nこれまで、GitLabから依存関係リストをCSVファイルとしてエクスポートすることはできませんでした。本リリースから新機能として、依存関係リストをダウンロードする際にCSVオプションを選択して、CSV形式でリストをエクスポートできるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/dependency_list/#download-the-dependency-list)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/435843)\n\n### 「ツールフィルター」が「スキャナーフィルター」と「レポートタイプフィルター」に置き換え\n\nSaaS: Ultimate\nSelf-Managed: Ultimate\n\nこれまで、脆弱性レポートの**ツール**検索フィルタでは、スキャナーのタイプ（ESLintやGemnasiumなど）とレポートのタイプ（SASTやコンテナスキャンなど）が単一のグループとして扱われ、個別に指定することができませんでした。\n\n今回、より効率的に適切なツールを検索できるよう、**ツール**フィルターを**スキャナー**フィルターと**レポートタイプ**フィルターに分けました。これにより、スキャナーとレポートタイプを別々に指定できるようになり、より細かく検索条件を設定できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/vulnerability_report/#report-type-filter)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/503371)\n\n### アクセストークンの並べ替えオプションを強化\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nUIとAPIにアクセストークンの並べ替えオプションが追加されました。これらの並べ替えオプションは、GitLabの既存のトークン管理機能を補完し、アクセストークン管理の自由度を高めるとともに、アクセストークンのセキュリティ維持にも役立ちます。新しい並べ替えオプションには次のものがあります。\n\n* 有効期限順（昇順）：最も早く期限が切れるトークンから表示\n* 有効期限順（降順）：有効期限までの期間が最も長いトークンから表示\n* 最終使用日順（昇順）：最近使用されていないトークンから表示\n* 最終使用日順（降順）：最近使用されたトークンから表示\n\n[ドキュメント](https://docs.gitlab.com/user/profile/personal_access_tokens/)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/519716)\n\n### Geo - 新しいレプリケーションビューの導入\n\nSaaS: -\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\nGeoのレプリケーションビューが、新しい見た目と使いやすさに生まれ変わりました。新しいデザインは、GitLab全体と統一感を持たせつつ、Geoセカンダリサイトの同期と検証ステータスを確認しやすい、より効率化されたインターフェイスを実現しています。さらに新機能として、各レプリケーション項目をクリックすると詳細画面が表示されるようになり、プライマリおよびセカンダリのチェックサム、エラーの詳細など、多くの情報が確認できるようになりました。これにより、Geoの同期に関する問題のトラブルシューティングがはるかに簡単になります。\n\n[ドキュメント](https://docs.gitlab.com/administration/geo/)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509349)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/410401)\n\u003Cimg src=\"https://about.gitlab.com/images/17_11/geo_new_replicables_view.png\">\n\n### GitLab Duo ChatがAnthropicのClaude Sonnet 3.7を採用\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nGitLab Duo Chatのベースモデルが、AnthropicのClaude 3.5 SonnetからClaude Sonnet 3.7に更新されました。これにより、ほとんどの質問は新モデルで処理されます。\n\nClaude 3.7 Sonnetは、コーディングと推論機能が大幅に強化されており、コードの説明、コードの生成、テキストデータの処理、複雑なDevSecOps関連の質問に対して、より精度の高い回答が可能になりました。これらの分野では、より詳細で正確な応答が得られます。\n\nこのアップグレードはChat機能全体に適用され、すべてのChat機能で一貫した品質向上が図られています。\n\n[ドキュメント](https://docs.gitlab.com/user/gitlab_duo_chat/examples/)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/521034)\n\n### Linuxパッケージの改善\nSaaS: -\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nGitLab 18.0では、PostgreSQLの最小サポートバージョンはバージョン16になります。この変更に備えて、[PostgreSQLクラスター](https://docs.gitlab.com/administration/postgresql/replication_and_failover/)を使用していないインスタンスでは、GitLab 17.11へのアップグレード時にPostgreSQLをバージョン16に自動的にアップグレードする仕組みが導入されます。\n\n[PostgreSQLクラスター](https://docs.gitlab.com/administration/postgresql/replication_and_failover/)を使用している場合、または[この自動アップグレードを希望しない](https://docs.gitlab.com/omnibus/settings/database/#opt-out-of-automatic-postgresql-upgrades)場合は、[手動でPostgreSQL 16にアップグレード](https://docs.gitlab.com/omnibus/settings/database/#upgrade-packaged-postgresql-server)してからGitLab 18.0にアップグレードする必要があります。\n\n[ドキュメント](https://docs.gitlab.com/omnibus/)\n[イシュー](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/8504)\n\n### GitLab Duo Chatで複数のチャットを管理可能に\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nGitLab Duo Chatを使用した複数のチャットが、GitLab Self-ManagedインスタンスのWeb UIで利用できるようになりました。新しいチャットの作成、履歴の閲覧、およびチャット間の切り替えをコンテキストを失うことなく行えます。\n\nプライバシー保護のために、30日間アクティビティのないチャットは自動的に削除されます。また、チャットはいつでも手動で削除できます。GitLab Self-Managedをご利用の場合、管理者は会話の保持時間をさらに短縮することも可能です。\n\n[イシュー526013](https://gitlab.com/gitlab-org/gitlab/-/issues/526013)で、ご意見をお聞かせください。\n\n[ドキュメント](https://docs.gitlab.com/user/gitlab_duo_chat/#have-multiple-conversations-with-chat)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16108)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/h9ooN05cNbw?si=J6UGE_T5YIc6HL_P\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### GitLab Duo Self-Hostedで開いているファイルをコード提案のコンテキストとして使用可能に\nSaaS: -\u003Cbr>\nSelf-Managed: Ultimate、Duo Enterprise\n\nGitlab Duo Self-Hostedでは、コード提案を使用するときに、[IDEのタブで開いているファイル](https://docs.gitlab.com/user/project/repository/code_suggestions/#using-open-files-as-context)をコンテキストとして使用できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/project/repository/code_suggestions/#using-open-files-as-context)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16611)\n\n### GitLab Duo Self-HostedでAI搭載機能ごとに個別のモデルを選択可能に\nSaaS: -\u003Cbr>\nSelf-Managed: Ultimate、Duo Enterprise\n\nGitLab Duo Self-Hostedで、GitLab Self-Managedインスタンスの各GitLab Duo機能とサブ機能に対して、サポートされている個々のモデルを選択して設定できるようになりました。\n\nフィードバックは、[イシュー524175](https://gitlab.com/gitlab-org/gitlab/-/issues/524175)にお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/configure_duo_features/#configure-the-feature-to-use-a-self-hosted-model)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/17099)\n\n## バグ修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。\n17.11で提供されたすべてのバグ修正、パフォーマンスの強化、UI改善を確認するには、以下のリンクをクリックしてください。\n\n* [バグ修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.11)\n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.11)\n* [UIの改善](https://papercuts.gitlab.com/?milestone=17.11)\n\n\u003Cbr>\n\u003Cbr>\n\n## 非推奨事項\n\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n* パイプライン実行ポリシーの「inject\\_ci」戦略が「inject\\_policy」に変更\n* コンプライアンス基準適合ダッシュボードがコンプライアンス状況ダッシュボードに刷新\n* クライアント認証情報を使用しないOAuth ROPCグラント方式を非推奨化\n\n\u003Cbr>\n\u003Cbr>\n\n## 削除された機能と破壊的な変更\n\n削除されたすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n### GitLab 17.11へのアップグレードに関する重要なお知らせ\n\nGitLab 17.8では、新しい暗号化フレームワーク（GitLab 17.9から導入）に対応するため、3つの新しいシークレットが追加されました。\n\nマルチノード構成をご利用の場合は、[こちらのドキュメントページ（GitLab 17.11.0 changes）](https://docs.gitlab.com/update/versions/gitlab_17_changes/#17110)に記載されている、お使いの環境に適した手順に従ってください。\n\n### 変更履歴\n\n変更内容をすべて表示するには、次のページから変更履歴を確認してください。\n\n* [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)\n* [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)\n* [VS CodeのGitLabワークフロー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)\n* [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n### インストール\n\nGitLabを新規にインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/ja-jp/install/)をご覧ください。\n\n### 更新事項\n\n[更新ページ](https://about.gitlab.com/ja-jp/update/)をご覧ください。\n\n### ご不明な点がある場合\n\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスして質問を投稿してください。\n\n### GitLabサブスクリプションプラン\n\n* [Free](https://about.gitlab.com/pricing/)\n  ユーザー向けの永久無料機能を提供\n* [Premium](https://about.gitlab.com/pricing/premium/)\n  チームの生産性と調整を強化\n* [Ultimate](https://about.gitlab.com/pricing/ultimate/)\n  組織全体のセキュリティ、コンプライアンス、プランニングに対応\n\nGitLabのすべての機能を[無料](https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/)でお試しいただけます。\n\n\u003Cbr>\n\u003Cbr>\n\n*監修：ソリス ジェレズ / Jerez Solis [@jerezs](https://gitlab.com/jerezs)\u003Cbr>\n（GitLab合同会社 ソリューションアーキテクト本部 ソリューションアーキテクト）*\n\n### 過去の日本語リリース情報\n- [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n- [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n- [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n- [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)\n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)\n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)\n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)\n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)\n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)\n",[672,671,14,110],"2025-04-22",{"slug":907,"featured":92,"template":679},"gitlab-17-11-release","content:ja-jp:blog:gitlab-17-11-release.yml","Gitlab 17 11 Release","ja-jp/blog/gitlab-17-11-release.yml","ja-jp/blog/gitlab-17-11-release",{"_path":913,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":914,"content":920,"config":926,"_id":928,"_type":16,"title":929,"_source":18,"_file":930,"_stem":931,"_extension":21},"/ja-jp/blog/gitlab-17-10-release",{"title":915,"description":916,"ogTitle":915,"ogDescription":916,"noIndex":6,"ogImage":917,"ogUrl":918,"ogSiteName":770,"ogType":771,"canonicalUrls":918,"schema":919},"GitLab 17.10リリース","GitLab 17.10でリリースした最新機能をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662230/Blog/Hero%20Images/product-gl17-blog-release-cover-17-10-0093-1800x945-fy25.png","https://about.gitlab.com/blog/gitlab-17-10-release","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 17.10リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2025-03-20\",\n      }",{"title":915,"description":916,"authors":921,"heroImage":917,"date":922,"body":923,"category":14,"tags":924,"updatedDate":925},[676],"2025-03-20","## GitLab Duoコードレビューと根本原因分析を備えたGitLab 17.10をリリース\n\nこのたび、GitLab 17.10のリリースを発表しました。このリリースでは、GitLab Duoコードレビュー（ベータ版）、GitLab DuoSelf-Hostedの根本原因分析、GitLabクエリ言語（GLQL）ビュー（ベータ版）、DORAメトリクスを活用したDevOpsパフォーマンスの新しい可視化機能など、さまざまな機能が追加されました！\n\nこれらの機能は、今回のリリースに含まれる115件以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLab 17.10には、GitLabコミュニティのユーザーから205件ものコントリビュートがありました。ありがとうございました！\n\nGitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。\n\n来月のリリースで予定されている内容を先取りするには、[今後のリリースページ](https://about.gitlab.com/upcoming-releases/)をご覧ください。\n\n> [GitLab 17.10では、GitLab-Duoコードレビューと根本原因分析が追加されました。\nクリックしてSNSで共有しましょう！](https://x.com/intent/post?text=GitLab+17.10%E3%81%A7%E3%81%AF%E3%80%81GitLab%C2%B7Duo%E3%82%B3%E3%83%BC%E3%83%89%E3%83%AC%E3%83%93%E3%83%A5%E3%83%BC%E3%81%A8%E6%A0%B9%E6%9C%AC%E5%8E%9F%E5%9B%A0%E5%88%86%E6%9E%90%E3%81%8C%E8%BF%BD%E5%8A%A0%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%E3%82%AF%E3%83%AA%E3%83%83%E3%82%AF%E3%81%97%E3%81%A6SNS%E3%81%A7%E5%85%B1%E6%9C%89%E3%81%97%E3%81%BE%E3%81%97%E3%82%87%E3%81%86%EF%BC%81%0D%0A&url=https%3A%2F%2Fabout.gitlab.com%2Fja-jp%2Fblog%2F2025%2F03%2F20%2Fgitlab-17-10-release%2F)\n\n## 今月の[MVP](https://about.gitlab.com/community/mvp/)は[Alexey Butkeev](https://gitlab.com/abutkeev)さんが受賞\n\nMVPには、誰もが[GitLabコミュニティのコントリビューターを推薦](https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490)できます。現在の候補者を応援したり、他の誰かをノミネートしてみませんか？🙌\n\n[Alexey Butkeev](https://gitlab.com/abutkeev)さんは、GitLabのグローバルな展開とユーザーエクスペリエンスの向上に貢献する、貴重なコミュニティメンバーです。Alexeyさんの影響力のあるローカライゼーションと翻訳を通じた貢献は、当コミュニティの多様性、インクルージョン、帰属意識の価値観を体現しています。\n\n「GitLab 17.10のMVPに選ばれ、とても光栄です。GitLabをより使いやすく、包括的なものにするために貢献できることを嬉しく思います」とAlexeyさんは話します。「ローカライズはチームワークで成り立つものであり、支え合いの文化が深く根付いたコミュニティの一員であることに感謝しています。」\n\nコードへの貢献に加えて、AlexeyさんはGitLabとCrowdinを活用し、翻訳の誤りを発見・記録・修正する取り組みにも率先して取り組みました。その綿密なリサーチと問題解決能力が評価され、GitLab 17.10のMVPに選ばれました。\n\nAlexeyさんは、GitLabのグローバリゼーションテクノロジーのシニアマネージャーである[Oleksandr Pysaryuk](https://gitlab.com/opysaryuk)によって推薦され、GitLabのグローバリゼーション＆ローカライゼーションのディレクターである[Daniel Sullivan](https://gitlab.com/djsulliv)からも支持を受けました。「GitLabでのあなたの貢献とサポートに心から感謝しています」とDanielは言います。「GitLabが世界中でより多くの人に支持される企業となるために、ご尽力いただき本当にありがとうございます！」\n\nGitLabをより包括的で透明性の高いものにしてくれたAlexeyさん、ありがとうございます！\n\u003Cbr>\n\u003Cbr>\n\u003Cbr>\n\n## GitLab 17.10でリリースされた主な改善点\n\n### GitLab Duoコードレビュー（ベータ版）\n\nSaaS: Ultimate、Duo Enterprise\u003Cbr>\nSelf-Managed: Ultimate、Duo Enterprise\n\nコードレビューは、ソフトウェア開発において不可欠な作業です。コードレビューを行うことで、プロジェクトへの新たなコントリビュートが確実にコード品質とセキュリティの保証と強化につながります。また、エンジニアに指導やフィードバックの場を提供できます。しかし、ソフトウェア開発プロセスにおいて特に時間がかかる作業でもあります。\n\nGitLab Duoコードレビューは、コードレビュープロセスの次世代の姿です。\n\nGitLab Duoコードレビューを使用すれば、開発プロセスを高速化できます。GitLab Duoコードレビューを使用してマージリクエストで最初のレビューを実行すると、潜在的なバグを特定し、改善点を提案してくれます。提案内容の一部はブラウザから直接適用できます。それをもとにイテレーションを行い、レビュープロセスに別の担当者を追加する前に、変更内容を改善します。\n\n__試してみましょう。__\n\n- すぐにコードレビューを開始するには、マージリクエストにレビュアーとして`@GitLabDuo`を追加してください。  \n- 変更内容に関するフィードバックを改良するには、コメントで`@GitLabDuo`をメンションしてください。\n\n今後の進捗状況に関しては、エピック[13008](https://gitlab.com/groups/gitlab-org/-/epics/13008)と関連する子エピックで追跡できます。フィードバックは、イシュー[517386](https://gitlab.com/gitlab-org/gitlab/-/issues/517386)で投稿できます。\n\n[ドキュメント](https://docs.gitlab.com/user/project/merge_requests/duo_in_merge_requests/#have-gitlab-duo-review-your-code)  \u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16298)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/FlHqfMMfbzQ?si=k5-Vl_w3zIJDSx9u\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### GitLab Duo Self-Hostedで根本原因分析が利用可能に\n\nSaaS: -\u003Cbr>\nSelf-Managed: Ultimate、Duo Enterprise\n\nGitLab Duo Self-Hostedで[GitLab Duo根本原因分析](https://about.gitlab.com/blog/developing-gitlab-duo-blending-ai-and-root-cause-analysis-to-fix-ci-cd/)を利用できるようになりました。この機能は、GitLab Duo Self-Hostedを使用しているGitLab Self-Managedインスタンス向けのベータ版です。Mistral、Anthropic、OpenAI GPTモデルファミリーをサポートしています。\n\nGitLab Duo Self-Hostedで根本原因分析を使用すると、データ主権を損なうことなく、CI/CDパイプラインで失敗したジョブのトラブルシューティングをより迅速に行えます。根本原因分析は、失敗したジョブのログを分析してその根本原因を素早く特定し、修正方法を提案します。\n\nGitLab Duo Self-Hostedの根本原因分析機能に関するフィードバックは、[イシュー523912](https://gitlab.com/gitlab-org/gitlab/-/issues/523912)からお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/#supported-gitlab-duo-features)  \u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13759)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/RCA_beta_17.10_min.png\">\n\n### GitLab Dedicatedフェイルオーバーインスタンスのホスティング先として利用可能なAWSリージョンを追加\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: -\n\nAWSリージョンのリストが拡大され、GitLab Dedicatedをご利用のお客様は、[ディザスタリカバリ](https://docs.gitlab.com/subscriptions/gitlab_dedicated/data_residency_and_high_availability/#disaster-recovery)用にフェイルオーバーインスタンスをホストする場所として、より多くのリージョンを選択できるようになりました。\n\nフェイルオーバー対応リージョンの拡大により、GitLab Dedicatedのユーザーは、データレジデンシーのニーズを満たすために選択するAWSリージョンに関係なく、GitLab Dedicatedのディザスタリカバリ機能を最大限に活用できるようになりました。\n\n今回新たに追加されたリージョンは、GitLab Dedicatedが必要とする一部のAWS機能を完全にはサポートしていないため、フェイルオーバーインスタンスのホスティング先としてのみ利用可能です。\n\n[ドキュメント](https://docs.gitlab.com/subscriptions/gitlab_dedicated/data_residency_and_high_availability/)   \n[イシュー](https://about.gitlab.com/direction/saas-platforms/dedicated/#theme-global-availability)  \n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/switchboard-secondary-region.png\">\n\n### GitLabクエリ言語ビュー（ベータ版）\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nこれまで、GitLab全体で進行中の作業を追跡して理解するには、複数箇所にアクセスする必要がありました。そのため、チームの効率が下がり、貴重な時間が費やされていました。\n\n本リリースでは、GitLabクエリ言語（GLQL）ビューのベータ版が導入され、現在のワークフロー内で直接、リアルタイムで動的な作業追跡ディレクトリを作成できるようになりました。\n\nGLQLビューは、あらゆるWikiページ、エピックの説明、イシューのコメント、マージリクエスト内のMarkdownコードブロックにライブデータクエリを埋め込みます。\n\nこれまでGLQLビューは実験的機能として提供されていました、本リリースから、担当者、作成者、ラベル、マイルストーンなどの主要なフィールドで論理式と演算子を使用した高度なフィルタリングをサポートし、ベータ版として提供されます。ビューの表示方法を表形式またはリスト形式にカスタマイズしたり、表示されるフィールドの制御や結果の制限の設定を行ったりできるため、チーム向けに焦点を絞った実用的なインサイトを得られます。\n\nチームは現在のワークフローから離れずに、コンテキストを維持しながら、必要な情報にアクセスできます。また、メンバー間で共通認識を持ち、コラボレーションを改善できるようになりました。\n\n今後もこの機能を改善していく予定ですので、ぜひ[フィードバックをお寄せください](https://gitlab.com/gitlab-org/gitlab/-/issues/509791)。\n\n[ドキュメント](https://docs.gitlab.com/user/glql/#glql-views)  \u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14938)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/CML0hefVwSA?si=y8loas4VYVx1KDFT\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### Markdownの利用体験の向上\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nGitLab Flavored Markdownに以下の改善点が加えられ、大幅に強化されました。\n\n__- 数式と画像処理の機能向上：__\n  -  より複雑な数式を扱えるように、グループやセルフホストインスタンスの[数式レンダリング](https://docs.gitlab.com/user/markdown/#math-equations)の制限を無効化 \n  -  コンテンツのレイアウトをより適切に管理できるように、ピクセル値またはパーセンテージを使用して[画像の寸法](https://docs.gitlab.com/user/markdown/#change-image-or-video-dimensions)を正確に制御\n\n__- エディタの利用体験の向上：__\n  -  Enter/Returnキーが押された際に、自動的にリストを続行\n  -  キーボードショートカットを使用して、テキストを左右にシフト\n  -  説明リストの構文を使用して、明確な用語と定義のペアを作成\n  -  動画の幅を柔軟に調整\n\n__- より効果的なコンテンツ整理：__\n  - 自動展開される[サマリークイックビュー](https://docs.gitlab.com/user/markdown/#show-item-summary)を用いて、より簡単にコンテンツにアクセス（URLに`+s`を追加）  \n  * 参照先の[イシュータイトル](https://docs.gitlab.com/user/markdown/#show-item-title)を自動的にレンダリング（URLに`+`を追加）  \n  * [include構文](https://docs.gitlab.com/user/markdown/#includes)を使用して、コンテンツをモジュール化して整理  \n  * [アラートボックス](https://docs.gitlab.com/user/markdown/#alerts)を使用して、視覚的にわかりやすい吹き出しや警告を作成\n\nGitLab Flavored Markdownのこれらの機能強化により、ドキュメントを作成・メンテナンスするチームは、より柔軟にコンテンツの表示・整理を行えます。\n\n[ドキュメント](https://docs.gitlab.com/user/markdown/)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/7654)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/enhanced_markdown_experience.png\">\n\n### DORAメトリクスを用いてプロジェクト全体のDevOpsパフォーマンスを新たに視覚化\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\n[バリューストリームダッシュボード](https://www.youtube.com/watch?v=EA9Sbks27g4)に新たに「**DORAメトリクスによるプロジェクト**」パネルが追加されました。この表形式のパネルには、トップレベルグループの全プロジェクトが[4つのDORAメトリクス](https://about.gitlab.com/solutions/value-stream-management/dora/#overview)の詳細とともに一覧表示されます。マネージャーはこの表を使用して、パフォーマンスが高、中、低レベルのプロジェクトを識別できます。また、この情報を参考にして、データドリブンの意思決定や、リソースの効果的な割り当てを行えるほか、ソフトウェアデリバリーのスピード、安定性、信頼性を向上させる取り組みに注力できます。\n\n[DORAメトリクス](https://docs.gitlab.com/ee/user/analytics/dora_metrics.html)はGitLabですぐに利用可能であり、[DORAパフォーマースコアパネル](https://about.gitlab.com/blog/inside-dora-performers-score-in-gitlab-value-streams-dashboard/)と一緒に使用することで、経営陣は組織のDevOpsの健全性を包括的かつ完全に把握できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#projects-by-dora-categories) \u003Cbr> \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/408516)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/17.7_vsd_dora_table2.png\">\n\n### 新しいイシューの外観（ベータ版）\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\n本リリースから、イシューはエピックやタスクと共通のフレームワークを使用するようになり、リアルタイムで更新されるとともに、ワークフローが改善されました。\n\n- **ドロワー表示：** リストやボードのアイテムをドロワーで開いて、現在のコンテキストを保持したまま、素早く閲覧できます。上部のボタンを使用すると、全ページ表示に切り替わります。  \n* **タイプの変更：** 「タイプを変更」アクションを使用して、エピック、イシュー、タスク間でタイプを変換（「エピックへのプロモート」の後継となるアクション）できます。  \n* **開始日：** イシューで開始日がサポートされるようになり、エピックやタスクと機能が統一されました。  \n* **祖先：** タイトルとサイドバーの親フィールドの上に完全な階層が表示されます。関係を管理するには、新しい[クイックアクション](https://docs.gitlab.com/user/project/quick_actions/) コマンド`/set_parent（親を設定）`、`/remove_parent（親を削除）`、`/set_child（子を設定）`、および`/remove_child（子を削除）`を使用してください。  \n* **コントロール：** すべてのアクションに上部のメニュー（縦方向の省略記号）からアクセスできるようになりました。スクロールした場合でも消えずにヘッダーに表示されます。  \n* **開発：** イシューやタスクに関連するすべての開発アイテム（マージリクエスト、ブランチ、機能フラグ）が1つの便利なリストに統合されました。  \n* **レイアウト：** UIが改善され、イシューやエピック、タスク、マージリクエスト間でよりシームレスな体験ができるようになり、ワークフローをより効率的に進められるようになりました。  \n* **リンクされたアイテム：** 改善されたリンクオプションを使用して、タスク、イシュー、エピックの関係を作成できるようになりました。ドラッグ＆ドロップでリンクのタイプを変更したり、ラベルや完了したアイテムの表示を切り替えたりできます。\n\n[ドキュメント](https://docs.gitlab.com/user/project/issues/issue_work_items/)  \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/523713)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/focused-drawer-new-issues.png\">\n\n### エピック、イシュー、タスク、目標、主な結果用の説明テンプレート\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\n作業アイテム（エピック、タスク、目標、主な結果）用の説明テンプレートを使用して、ワークフローを効率化し、プロジェクト全体で一貫性を確保できるようになりました。\n\nこの強力な機能の実装により、標準化されたテンプレートを作成できるため、作業時間を削減するとともに、新たな作業アイテムの作成時に重要な情報を漏れなく含められます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/description_templates.html)  \u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16088)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/description_template.png\">\n\n### 脆弱性の重大度の変更\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\n脆弱性をトリアージする際は、組織固有のセキュリティコンテキストとリスク許容度に基づいて、柔軟に重大度を調整できなければなりません。これまでは、セキュリティスキャナーによって割り当てられるデフォルトの重大度レベルを使用せざるを得ませんでしたが、これでは特定の環境のリスクレベルを正確に反映できないことがあります。\n\n本リリースでは、組織のセキュリティニーズに合わせて、個別の脆弱性の重大度を手動で変更できるようになりました。具体的には、以下を行えるようになります。\n\n* 脆弱性の重大度レベルを **「致命的」、「高」、「中」、「低」、「情報」、「不明」** のいずれかに調整  \n* 脆弱性レポートから複数の脆弱性の重大度を一括で変更  \n* 視覚的なインジケーターにより、重大度レベルがカスタマイズされている脆弱性を簡単に特定\n\nすべての重大度の変更は、脆弱性情報の履歴および監査イベントで追跡され、プロジェクトのメンテナーロール以上、または`admin_vulnerability`権限を持つカスタムロールのチームメンバーのみが上書きできます。この機能により、セキュリティチームは脆弱性の優先順位付けをより柔軟に制御できるようになります。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/vulnerability_report/#change-or-override-vulnerability-severity)  \u003Cbr>\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/16157)  \n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/severity-override.png\">\n\n## GitLab 17.10のリリースに含まれるその他の改善点\n\n### To-Doアイテムの一括編集\n\nSaaS: Free、Premium、Ultimate  \u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\n改善された一括編集機能を使用して、To-Doリストをより効率的に管理できるようになりました。複数のTo-Doアイテムを選択して、一度に「完了」または「スヌーズ済み」に設定できるため、タスクをより細かく管理できるようになり、少ない手間で整理できます。\n\n[ドキュメント](https://docs.gitlab.com/user/todos#bulk-edit-to-do-items)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/16564)\u003Cbr>\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/bulk_edit_todos.png\">\n\n### To-Doアイテムのスヌーズ機能\n\nSaaS: Free、Premium、Ultimate  \u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nTo-Doリストの通知をスヌーズできるようになりました。重要なタスクに集中したいときに、一時的にアイテムを非表示にできます。作業に集中するために1時間後まで通知を受けたくない場合でも、翌日にタスクを再度確認したい場合でも、通知の再表示タイミングを細かく設定できるため、ワークフローをより効果的に管理できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/todos.html#snooze-to-do-items)  \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/17712)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/snooze-todo.png\">\n\n### アクセストークンを使用した非公開のPagesサイトでの認証\n\nSaaS: Free、Premium、Ultimate    \u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nアクセストークンを使用することで、プログラム経由で非公開のGitLab Pagesサイトで認証を受けられるようになりました。これにより、Pagesコンテンツとのやり取りを自動化しやすくなります。これまでは、制限付きのPagesサイトにアクセスするには、GitLab UIを通じた対話型認証が必要でした。\n\nこの機能強化により、セキュリティを維持しつつ生産性を向上させ、デベロッパーがより柔軟に非公開Pagesコンテンツを管理・配信できるようになります。\n\n[ドキュメント](https://docs.gitlab.com/user/project/pages/pages_access_control/#authenticate-with-an-access-token)    \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab-pages/-/issues/388)\n\n### ブランチルールでのスカッシュ設定の適用\n\nSaaS: Premium、Ultimate  \nSelf-Managed: Premium、Ultimate\n\nGitのワークフローによって、ブランチ間のマージ時に適用すべきコミットの処理方法は異なります。以前のバージョンのGitLabでは、マージ時にコミットをスカッシュするかどうかの設定と、その設定をどの程度強制的に適用するかについて、ひとつの方法しか設定できませんでした。この方法では、エラーが発生しやすいほか、プロジェクトの規則に従うために、デベロッパーがそれぞれのブランチターゲットに対して個別に判断を下す必要があるといった問題がありました。\n\n今回のアップデートにより、ブランチルールを使用して、保護ブランチごとにスカッシュ設定を適用できるようになりました。たとえば、以下のような設定が可能です。\n\n* `feature`ブランチから`develop`ブランチへのマージ時にスカッシュを必須にすることで、履歴を整理しやすくする。  \n* `develop`ブランチから`main`ブランチへのマージ時にスカッシュを無効にすることで、詳細なコミット履歴を保持する。\n\nこれにより、デベロッパーが手動で調整する必要もなく、プロジェクト全体のコミット履歴を一貫性を保ちながら管理でき、ワークフローにおける各ブランチの固有のニーズにも柔軟に対応できます。\n\n[ドキュメント](https://docs.gitlab.com/user/project/repository/branches/branch_rules/#edit-squash-commits-option)    \u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15526)\n\n### CODEOWNERSのパス除外設定\n\nSaaS: Premium、Ultimate    \u003Cbr>\nSelf-Managed: Premium、Ultimate\n\n`CODEOWNERS`ファイルを設定する際は、パスやファイルタイプに対する広範な一致パターンを含めることが一般的です。しかし、一部のドキュメントや自動ビルドファイル、その他のパターンでは、指定されたコードオーナーを必要としない場合があり、このような広範な設定が問題となる可能性があります。\n\n今回のアップデートで、`CODEOWNERS`ファイルにパス除外設定を追加することで、特定のパスを無視できるようになりました。これは、特定のファイルやパスをコードオーナーの承認対象から除外する場合に便利です。\n\n[ドキュメント](https://docs.gitlab.com/user/project/codeowners/reference/#exclusion-patterns)  \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/41914)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/create-codeowners-exclusions.png\">\n\n### 依存プロキシでのDocker Hub認証\n\nSaaS: Free、Premium、Ultimate  \u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nコンテナイメージのGitLab依存プロキシで、Docker Hubでの認証をサポートするようになりました。これにより、レート制限によるパイプラインの失敗を防ぎ、プライベートイメージへのアクセスが可能になります。\n\n2025年4月1日から、Docker Hubは未認証ユーザーに対してより厳しいプル制限（IPアドレスごとに10回のプル）を適用します。この制限に達すると、認証なしでのパイプライン実行が失敗する可能性があります。\n\n本リリースから、Docker Hubの認証情報や[パーソナルアクセストークン](https://docs.docker.com/security/for-developers/access-tokens/)、[組織アクセストークン](https://docs.docker.com/security/for-admins/access-tokens/)を使って、GraphQL APIを介してDocker Hub認証を設定できるようになりました。UI設定のサポートはGitLab 17.11で提供予定です。\n\n[ドキュメント](https://docs.gitlab.com/user/packages/dependency_proxy/#authenticate-with-docker-hub)   \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/331741)\n\n### 依存関係スキャンでのpub（Dart）パッケージマネージャーのサポート\n\nSaaS: Ultimate   \u003Cbr>\nSelf-Managed: Ultimate\n\n依存関係スキャンに、Dartの公式パッケージマネージャーであるpubのサポートが追加されました。このサポートは、依存関係スキャンの[最新テンプレート](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Jobs/Dependency-Scanning.latest.gitlab-ci.yml)および[CI/CDコンポーネント](https://gitlab.com/explore/catalog/components/dependency-scanning)に組み込まれています。\n\nこの追加は、ユーザーのAlexandre Larocheさんがコミュニティにコントリビュートしてくれたために実現しました。GitLabコンポジション解析チームは、製品向上へのコントリビュートに大変感謝しています。Alexandreさん、ありがとうございます。GitLabへのコントリビュート方法について、詳しくは[コミュニティコントリビュートプログラム](https://about.gitlab.com/community/contribute/)をご覧ください。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/dependency_scanning/#supported-languages-and-package-managers)   \u003Cbr>\n[エピック](https://gitlab.com/gitlab-org/security-products/analyzers/dependency-scanning/-/merge_requests/141)\n\n### GitLab OIDCプロバイダーによるトークン有効期限の設定\n\nSaaS: - \u003Cbr>\nSelf-Managed：Free、Premium、Ultimate\n\nGitLabをOpenID Connect（OIDC）プロバイダーとして使用する際、`id_token_expiration`属性を使って、IDトークンの有効期限を設定できるようになりました。これまで、IDトークンの有効期限は120秒と決められていました。\n\nこの場を借りて、コントリビュートしてくれた[Henry Sachs](https://gitlab.com/DerAstronaut)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/auth/oidc.html#configure-a-custom-duration-for-id-tokens)   \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/377654)\n\n### トークン情報APIを使用したトークンの識別と失効\nSaaS: - \u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nGitLabの管理者は、統一されたAPIを使用してトークンを識別し、失効できるようになりました。これまで、管理者は特定のトークンタイプに関連するエンドポイントを使用する必要がありましたが、新たに追加されたAPIを使用すれば、トークンタイプに関係なく失効が可能です。サポートされているトークンタイプのリストについては、「[トークン情報API](https://docs.gitlab.com/ee/api/admin/token.html)」を参照してください。\n\nこの場を借りて、コントリビュートしてくれた[Nicholas Wittstruck](https://gitlab.com/nwittstruck)さんを始め、シーメンス社チームに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ee/api/admin/token.html)  \u003Cbr>\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/15777)\n\n### ドロップダウンリストからデフォルトのコンプライアンスフレームワークを選択可能に\n\nSaaS: Premium、Ultimate  \nSelf-Managed: Premium、Ultimate\n\nユーザーは、GitLabコンプライアンスセンターでデフォルトのコンプライアンスフレームワークを設定でき、この設定はそのグループで作成される新しいプロジェクトやインポートされたプロジェクトに適用されます。デフォルトのコンプライアンスフレームワークには、ユーザーが識別しやすいように **デフォルト** というラベルが付いています。\n\nデフォルトのコンプライアンスフレームワークを設定しやすくするために、トップレベルグループのコンプライアンスセンター内のフレームワーク一覧ページで、ドロップダウンリストからフレームワークをデフォルトとして設定できる機能を追加しました。この機能は、サブグループやプロジェクトのコンプライアンスセンターでは利用できません。\n\n[ドキュメント](https://docs.gitlab.com/user/compliance/compliance_center/compliance_frameworks_report/#set-and-remove-a-compliance-framework-as-default)\u003Cbr>\n[エピック](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181500)\n\n### トークンの有効期限通知の送信範囲を拡大\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nこれまで、アクセストークンの有効期限通知メールは、トークンが期限切れになるグループやプロジェクトのダイレクトメンバーにのみ送信されていました。本リリースでは、設定を有効にすると、継承されたグループやプロジェクトのメンバーにも通知が送信されるようになりました。これにより、トークンの有効期限が切れる前に管理しやすくなります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/manage.html#expiry-emails-for-group-and-project-access-tokens)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/463016)\n\n### GitLab Duo Chatのサイズが変更可能に\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\u003Cbr>\nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nGitLab UIで、GitLab Duo Chatのドロワーメニューの大きさを変更できるようになりました。これにより、コード出力の表示や、Chatを開いたままバックグラウンドでGitLabを操作することが容易になります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/gitlab_duo_chat/#use-gitlab-duo-chat-in-the-gitlab-ui)  \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/499849)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/ai-powered-resizable-duo-chat-in-the-web-app.gif\">\n\n### GitLab Duo Chatで複数のチャットを管理\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\u003Cbr>\nSelf-Managed: - \n\nGitLab Duo Chatでは、複数のチャットを並行して管理できるようになり、異なるトピック間でもコンテキストを把握しやすくなりました。新しいチャットの作成、チャット履歴の閲覧、およびチャット間の切り替えを行えます。\n\nこれまでは、新しいチャットを開始すると、既存のチャットの内容が消えてしまっていましたが、今回のアップデートで、別々のトピックに関する複数のチャットを管理できるようになりました。それぞれのチャットで個々の内容が維持されるため、たとえば、あるチャットでコードの説明について補足質問をする一方で、別のチャットで作業計画を準備することができます。\n\n過去のチャットを確認したい場合は、新しいチャット履歴アイコンを選択すれば、最近のチャットをすべて確認できます。チャットは最新のアクティビティ順に自動的に並べ替えられるので、前回の続きからスムーズに再開できます。\n\nプライバシーを保護するために、アクティビティが30日間ないチャットは自動的に削除されます。また、いつでもチャットを手動で削除することが可能です。\n\n現在、この機能はGitLab.comのWeb UIでのみ利用可能で、GitLab Self-ManagedインスタンスやIDE統合では利用できません。\n\n[ドキュメント](https://docs.gitlab.com/user/gitlab_duo_chat/#have-multiple-conversations-with-chat)  \u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16108)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/h9ooN05cNbw?si=xNp7Ruzk57l9Kg5y\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### 「マイワーク」内のプロジェクトの新しいナビゲーション体験\n\nSaaS: Free、Premium、Ultimate  \u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nGitLabでは、「**マイワーク**」内のプロジェクト概要に大きな改善を加え、プロジェクトの検索とアクセス方法を効率化しました。このアップデートでは、ユーザーがプロジェクトを操作する方法に合わせて、より直感的なタブ形式のナビゲーションシステムが導入されました。\n\n- 新しい「**コントリビュート済み**」タブ（旧「**あなたの**」）では、自分がコントリビュートしたすべてのプロジェクトが表示されます。個人プロジェクトも含まれるため、開発活動の追跡が容易になります。  \n- 「**個人**」タブを使って、個人で取り組んでいるプロジェクトをすばやく見つけられるようになりました。このタブは、メインナビゲーションにわかりやすく表示されています。  \n- 「**メンバー**」タブ（旧「**すべて**」）では、自分がメンバーであるすべてのチームプロジェクトを確認できます。 \n- 「**無効**」タブ（旧「**削除予定**」）では、アーカイブ済みまたは削除予定のプロジェクトを一目で把握できます。\n\nさらに、適切な権限を持つユーザーは、「**マイワーク**」のプロジェクトの概要から直接プロジェクトを編集または削除できるようになりました。この変更は、より効率的で使いやすいGitLabの提供を目指す取り組みの一環です。新しいレイアウトにより、もっとも重要なプロジェクトに集中しやすくなり、異なるプロジェクトカテゴリ間を行き来する時間を短縮できます。\n\nこのアップデートに関するご意見をお待ちしています。新しいナビゲーションシステムに関するフィードバックを[エピック16662](https://gitlab.com/groups/gitlab-org/-/epics/16662)でぜひお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/user/project/working_with_projects/)  \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/465889)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/your_work_new_project_layout.png\">\n\n### CSVファイルを使用した再アサインのリクエスト\n\nSaaS: Free、Premium、Ultimate  \u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\n本リリースでは、ユーザーコントリビュートマッピング時に、CSVファイルを使用して一括で再アサインを行えるようになりました。多数のプレースホルダーユーザーを含む大規模なユーザーベースを管理している場合、オーナーロールのグループメンバーは以下の操作を実行できます。\n\n1. あらかじめ項目が設定されたCSVテンプレートをダウンロード  \n2. 移行先インスタンスのGitLabユーザー名または公開メールアドレスを追加  \n3. 入力済みのファイルをアップロードし、一括ですべてのコントリビュートを再アサイン\n\nこの新機能により、UIを使った手動での再アサイン作業の手間を削減できます。さらに、本リリースでは、大規模な移行プロセスを効率化するため、API経由でもCSVを使用した再アサインが可能になりました。\n\n[ドキュメント](https://docs.gitlab.com/user/project/import/#request-reassignment-by-using-a-csv-file)  \u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16765)\n\n### プレースホルダーユーザーの作成日時を示すタイムスタンプの追加\n\nSaaS: Free、Premium、Ultimate  \u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nこれまでは、グループやプロジェクトをインポートしても、[プレースホルダーユーザー](https://docs.gitlab.com/user/project/import/#placeholder-users)がいつ作成されたかを確認できませんでした。本リリースでタイムスタンプを追加し、移行の進捗を追跡したり、発生した問題を迅速に特定・対応したりできるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/user/project/import/#placeholder-user-attributes)  \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/507297)\n\n### GitLab Duoコード提案およびGitLab Duo Chatの傾向に関する新たなインサイト\n\nSaaS: Ultimate、Duo Enterprise  \u003Cbr>\nSelf-Managed: Ultimate、Duo Enterprise\n\nAIインパクトダッシュボードのAI比較メトリクスパネルに、GitLab Duoコード提案の採用率とGitLab Duo Chatの使用率（月ごとの比較、パーセント表示）の月次推移を追跡する機能が追加されました。この新しい分析は、既存のGitLab Duoコード提案とGitLab Duo Chatタイルの機能を補完するもので、これまで提供していた30日間のスナップショットに加えて利用できます。新しく追加されたこれらのメトリクスを使用することで、マネージャーはソフトウェア開発プロセスにおけるAIの影響をより正確に測定できるほか、コード提案の採用率とDuo Chatの使用率を他のSDLCメトリクスと長期的に比較することで、パターンを特定できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/analytics/ai_impact_analytics.html) \u003Cbr> \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/477246)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/17.9_ai_cs_mom.png\">\n\n### Git blameで特定のリビジョンを無視\n\nSaaS: Free、Premium、Ultimate  \u003Cbr> \nSelf-Managed: Free、Premium、Ultimate\n\nリポジトリの履歴を閲覧していると、プロジェクトにおける実質的な変更とは関係のないコミットがある場合があります。これは、次のような場合に発生する可能性があります。\n\n* リファクタリングを行って、機能を変更せずに、あるライブラリから別のライブラリに変更する場合  \n* コードフォーマッターやLinterを実行して、コードベース全体を標準化する場合\n\nこのようなコミットがあると、`blame`を使用してプロジェクト履歴を確認する際に、変更点を把握しにくくなります。Gitでは、プロジェクト内で`.git-blame-ignore-revs`ファイルを使用して、こうしたコミットを特定できます。GitLabでは、blame表示を切り替えて、これらの特定のリビジョンを「Blame環境設定」ドロップダウンリストから表示または非表示にすることができるようになりました。これにより、プロジェクトの履歴を把握しやすくなります。\n\n[ドキュメント](https://docs.gitlab.com/user/project/repository/files/git_blame/#ignore-specific-revisions)  \u003Cbr> \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15751)\n\n### GitLab Runner 17.10\n\nSaaS: Free、Premium、Ultimate  \u003Cbr> \nSelf-Managed: Free、Premium、Ultimate\n\n本日、GitLab Runner 17.10もリリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドのエージェントです。GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。\n\n新機能：\n\n* [インスタンス使用前にAutoscaler Executorのヘルスチェックを実施](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38271)  \n* [Docker Executorのボリュームを拡張](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38249)  \n* [サービス用のデバイス追加のためのDocker Executor設定を追加](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/6208)\n\nバグ修正：\n\n* [Windows `gitlab-runner-helper`イメージが\\`/opt/step-runner’パスの無効なボリューム指定により失敗する](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38632)  \n* [GitLab Runner 17.7.0以降のバージョンでRPMパッケージのリポジトリのミラーリングが正常に機能しない](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38409)  \n* [GitLab CI/CDで`git submodule update --remote`の実行時にエラーが発生する](https://gitlab.com/gitlab-org/gitlab/-/issues/359825)\n\nすべての変更の一覧は、GitLab Runnerの[変更履歴](https://gitlab.com/gitlab-org/gitlab-runner/blob/17-10-stable/CHANGELOG.md)で確認できます。\n\n[ドキュメント](https://docs.gitlab.com/runner)\n\n### パッケージレジストリに監査イベントを追加\n\nSaaS: Free、Premium、Ultimate  \u003Cbr> \nSelf-Managed: Free、Premium、Ultimate\n\nパッケージレジストリでの操作が、監査イベントとして記録されるようになりました。これにより、チームはパッケージの公開や削除の履歴を追跡し、コンプライアンス要件を満たすことができるようになります。\n\nこのリリース以前は、パッケージを公開・変更したユーザーを追跡するビルトイン機能はなく、チームは独自に追跡システムを作成したり、パッケージの変更内容を手動で記録したりする必要がありました。今後は、監査イベントが記録され、変更を行ったユーザー、変更の日時、認証方法、パッケージの変更内容を確認できます。\n\nプロジェクトの監査イベントは、グループのネームスペースまたは各プロジェクトオーナーのプロジェクト自体に保存されます。また、グループはストレージ管理のために監査イベントを無効化することもできます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/audit_event_types.html)  \u003Cbr> \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/329588)\n\n### コンプライアンスを守るためのパイプライン実行ポリシーにおける`needs`ステートメントの処理方法\n\nSaaS: Ultimate  \u003Cbr> \nSelf-Managed: Ultimate\n\n本リリースから、パイプライン実行の制御を強化するために、`.pipeline-policy-pre`事前ステージで実施されるジョブは、後続のステージのジョブが開始される前に完了することが必須となりました。これは、ジョブに`needs`ステートメントが定義されているかどうかを問わず適用されます。これまでは、`.pipeline-policy-pre`ステージで定義されたジョブと、`needs`ステートメントを持つ後続のパイプラインのジョブは、パイプラインが実行されるとすぐに開始されていました。今回の改善により、後続のステージのジョブは、依存関係がないジョブの開始前に`.pipeline-policy-pre`ステージが完了するのを待つ必要があります。これにより、順序どおりの実行を強制し、セキュリティポリシーに基づくコンプライアンスを確保します。\n\nGitLabをご利用のお客様は、デベロッパーのジョブが実行される前にセキュリティやコンプライアンスチェックを強制するために事前ステージを活用しています。一般的なユースケースは、セキュリティチェックやコンプライアンスチェックを実施し、そのチェックに合格しなければパイプライン全体を失敗させるという方法です。ジョブが順不同で実行されると、この強制が回避され、ポリシーの意図が弱まる可能性があります。この改善により、コンプライアンスの適用に対するより一貫したアプローチが提供されます。\n\nパイプラインの開始時に、`needs`の動作を上書きせずにジョブを挿入するには、17.9で新たに導入されたカスタムステージ機能を使用して、ジョブを設定してください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html#pipeline-execution-policy-schema)  \u003Cbr> \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/469256)\n\n### 期限切れトークン向けのWebhookトリガーの拡張\n\nSaaS: Free、Premium、Ultimate  \u003Cbr> \nSelf-Managed: Free、Premium、Ultimate\n\nプロジェクトやグループのアクセストークンが期限切れになる60日および30日前に、Webhookイベントをトリガーできるようになりました。これまで、これらのWebhookイベントは有効期限が切れる7日前にのみトリガーされていました。この機能は任意で設定可能です。有効期限が近づくトークンに関する既存のメール通知スケジュールと同じタイミングでWebhook通知を受け取ることができます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/manage.html#add-additional-webhook-triggers-for-group-access-token-expiration)  \u003Cbr> \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/499732)\n\n### OmniAuthプロファイル属性をユーザーへマッピング可能に\nSaaS: -\u003Cbr> \nSelf-Managed: Premium、Ultimate\n\nOmniAuthアイデンティティプロバイダー（IdP）からGitLabユーザーのプロフィールに、「組織」と「役職」の属性をマッピングできるようになりました。これにより、IdPをこれらの属性に関する信頼できる唯一の情報源として管理でき、ユーザー側での変更ができなくなります。\n\n[ドキュメント](https://docs.gitlab.com/ee/integration/omniauth.html#keep-omniauth-user-profiles-up-to-date)  \u003Cbr> \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/505575)\n\n### 認証情報インベントリ内でのアクセストークンの並べ替え\n\nSaaS: Ultimate  \u003Cbr> \nSelf-Managed: Ultimate\n\n認証情報インベントリで、個人、プロジェクト、およびグループのアクセストークンを、所有者、作成日、および最終使用日で並べ替えられるようになりました。これにより、アクセストークンの特定および管理をより素早く行えるようになります。この場を借りて、コントリビュートしてくれた[Chaitanya Sonwane](https://gitlab.com/chaitanyason9)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/administration/credentials_inventory/)  \u003Cbr> \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/513181)\n\n### GitLab Duo Self-Hostedのコード提案でAIインパクトダッシュボードが利用可能に\n\nSaaS: -\u003Cbr> \nSelf-Managed: Ultimate\n\nSelf-Managedインスタンスで、GitLab Duo Self-Hostedのコード提案と合わせてAIインパクトダッシュボードを利用できるようになりました。これにより、GitLab Duoが生産性に及ぼす影響を把握できます。GitLab Duo Self-HostedのAIインパクトダッシュボードはベータ版であり、Visual Studio Code、Microsoft Visual Studio、JetBrains、NeovimのIDEとともにSelf-Managedインスタンスで利用できます。\n\nAIインパクトダッシュボードを使用すると、リードタイム、サイクルタイム、DORA、脆弱性などのメトリクスとAI使用傾向を比較できます。これにより、GitLab Duo Self-Hostedを使用してエンドツーエンドのワークストリームで節約される時間を測定できるため、デベロッパーの活動ではなく、ビジネスの成果に焦点を当てられます。\n\nAIインパクトダッシュボードに関するフィードバックは、[イシュー456105](https://gitlab.com/gitlab-org/gitlab/-/issues/456105)からお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/user/analytics/ai_impact_analytics/)  \u003Cbr> \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/523807)\n\n### プロジェクトの作成権限の設定の改善\n\nSaaS: Free、Premium、Ultimate  \u003Cbr> \nSelf-Managed: Free、Premium、Ultimate\n\nプロジェクトの作成権限の設定がさらにわかりやすく、直感的に、そしてセキュリティ原則に沿ったものに改善されました。改善された設定には次のものが含まれます。\n\n* 「プロジェクトの作成に対するデフォルトの保護」というドロップダウンオプションを「プロジェクトの作成に必要なデフォルトの最小ロール」に変更し、目的をより明確にしました。  \n* プラットフォーム全体で一貫性を保つために、ドロップダウンオプションの「デベロッパー \\+ メンテナー」を「デベロッパー」に変更しました。  \n* ドロップダウンオプションを最も制限が厳しいアクセスレベルから最も制限の少ないアクセスレベルへ並べ替えました。\n\nこれにより、グループ内でプロジェクト作成が可能なロールの把握・設定を行いやすくなり、管理者がより確実に適切なアクセス制御を実施できます。  \nこの場を借りて、コミュニティにコントリビュートしてくれた[@yasuk](https://gitlab.com/yasuk)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/administration/settings/visibility_and_access_controls/#define-which-roles-can-create-projects)  \u003Cbr> \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/507410)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/updated_project_creation_protection.png\">\n\n### Meta Llama 3モデルがGitLab Duo Self-Hostedのコード提案とChatで利用可能に\n\nSaaS: -\u003Cbr>\nSelf-Managed: Ultimate、Duo Enterprise\n\nGitLab Duo Self-Hostedで、一部のMetaLlama 3モデルを利用できるようになりました。このモデルは、GitLab Duo Self-Hostedのベータ版で提供され、GitLab Duo Chatとコード提案をサポートします。\n\nこれらのモデルをGitLab Duo Self-Hostedで使用した際のフィードバックについて、ぜひ[イシュー523912](https://gitlab.com/gitlab-org/gitlab/-/issues/523917)にお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/supported_models_and_hardware_requirements/#supported-models)  \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/523917)\n\n### GitLab Duo Self-HostedでのAI搭載機能用モデルの選択\n\nSaaS: -\u003Cbr>\nSelf-Managed: Ultimate、Duo Enterprise\n\nGitLab Duo Self-Hostedで、GitLab Duo Chatの各サブ機能に対して個別にサポートされているモデルを選択できるようになりました。Chatのサブ機能でのモデルの選択と設定は、現在ベータ版です。\n\nフィードバックは、[イシュー524175](https://gitlab.com/gitlab-org/gitlab/-/issues/524175)にお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/administration/gitlab_duo_self_hosted/configure_duo_features/#configure-the-feature-to-use-a-self-hosted-model)  \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/524174)  \n\n\u003Cimg src=\"https://about.gitlab.com/images/17_10/Expanded_Chat_17.10_v2.png\">\n\n## バグ修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。  \n17.10で提供されたすべてのバグ修正、パフォーマンスの強化、UI改善を確認するには、以下のリンクをクリックしてください。\n\n* [バグ修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%255B%255D=type::bug&or%255Blabel_name%255D%255B%255D=workflow::complete&or%255Blabel_name%255D%255B%255D=workflow::verification&or%255Blabel_name%255D%255B%255D=workflow::production&milestone_title=17.10)  \n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%255B%255D=bug::performance&or%255Blabel_name%255D%255B%255D=workflow::complete&or%255Blabel_name%255D%255B%255D=workflow::verification&or%255Blabel_name%255D%255B%255D=workflow::production&milestone_title=17.10)  \n* [UIの改善](https://papercuts.gitlab.com/?milestone=17.10)\n\n\u003Cbr>\n\u003Cbr>\n\n## 非推奨事項\n\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n* [コンテナレジストリ用S3ストレージドライバー（AWS SDK v1）](https://docs.gitlab.com/update/deprecations/#s3-storage-driver-aws-sdk-v1-for-the-container-registry)  \n* [コンテナレジストリ用Azureストレージドライバー](https://docs.gitlab.com/update/deprecations/#azure-storage-driver-for-the-container-registry)\n\n\u003Cbr>\n\u003Cbr>\n\n## 削除された機能と破壊的な変更\n\n削除されたすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n### 変更履歴\n変更内容をすべて表示するには、次のページから変更履歴を確認してください。\n\n* [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)  \n* [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)  \n* [VS CodeのGitLabワークフロー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)  \n* [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n### インストール\n\nGitLabを新たにインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/ja-jp/install/)をご参照ください。\n\n### 更新事項\n\n[更新ページ](https://about.gitlab.com/ja-jp/update/)をご確認ください。\n\n### ご不明な点がある場合\n\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスして質問を投稿してください。\n\n### GitLabサブスクリプションプラン\n\n* [Free](https://about.gitlab.com/ja-jp/pricing/)  \n  ユーザー向けの永久無料機能を提供  \n* [Premium](https://about.gitlab.com/pricing/premium/)  \n  チームの生産性と調整を強化  \n* [Ultimate](https://about.gitlab.com/pricing/ultimate/)  \n  組織全体のセキュリティ、コンプライアンス、プランニングに対応\n\nGitLabのすべての機能を[無料](https://about.gitlab.com/free-trial/)でお試しいただけます。  \n\n\u003Cbr>\n\u003Cbr>\n\n*監修：小松原 つかさ  [@tkomatsubara](https://gitlab.com/tkomatsubara)\u003Cbr>\n（GitLab合同会社 ソリューションアーキテクト本部 シニアパートナーソリューションアーキテクト）*\u003Cbr>\n\n*ソリス ジェレズ / Jerez Solis [@jerezs](https://gitlab.com/jerezs)\u003Cbr>\n（GitLab合同会社 ソリューションアーキテクト本部 ソリューションアーキテクト）*\n\n\u003Cbr>\n\u003Cbr>\n\n### 過去の日本語リリース情報\n\n### 過去の日本語リリース情報\n\n- [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n- [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n- [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n- [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)  \n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)  \n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)  \n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)  \n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)  \n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)\n",[672,671,14],"2025-03-25",{"slug":927,"featured":92,"template":679},"gitlab-17-10-release","content:ja-jp:blog:gitlab-17-10-release.yml","Gitlab 17 10 Release","ja-jp/blog/gitlab-17-10-release.yml","ja-jp/blog/gitlab-17-10-release",{"_path":933,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":934,"content":939,"config":945,"_id":947,"_type":16,"title":948,"_source":18,"_file":949,"_stem":950,"_extension":21},"/ja-jp/blog/automating-agile-workflows-with-the-gitlab-triage-gem",{"title":935,"description":936,"ogTitle":935,"ogDescription":936,"noIndex":6,"ogImage":793,"ogUrl":937,"ogSiteName":770,"ogType":771,"canonicalUrls":937,"schema":938},"gitlab-triage gemを使ったアジャイルワークフローの自動化","「GitLab入門」シリーズでは、イシューやマージリクエストのトリアージなどの繰り返し発生するタスクを自動化して、デベロッパーの貴重な時間を確保する方法をご紹介します。","https://about.gitlab.com/blog/automating-agile-workflows-with-the-gitlab-triage-gem","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"gitlab-triage gemを使ったアジャイルワークフローの自動化\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab\"}],\n        \"datePublished\": \"2025-03-13\",\n      }",{"title":935,"description":936,"authors":940,"heroImage":793,"date":941,"body":942,"category":14,"tags":943},[860],"2025-03-13","*「GitLab入門」シリーズへようこそ。このシリーズでは新たにGitLabを使い始める方向けに、GitLab\nDevSecOpsプラットフォームに慣れ親しむために役立つ内容をお届けします。*\n\n\n今回の記事では、[`gitlab-triage`](https://gitlab.com/gitlab-org/ruby/gems/gitlab-triage)\ngemを取り上げます。この非常に強力なツールを使用すると、アジャイルワークフローを自動化するボットを作成できます。自動化により、手作業を排除して作業効率を向上させましょう。\n\n\n## ワークフローを自動化すべき理由\n\n\nソフトウェア開発では効率性は重要です。イシューやマージリクエストのトリアージなどの繰り返し発生するタスクを自動化できれば、チームの貴重な時間を確保し、一番重要な作業である「素晴らしいソフトウェアの開発」に集中できるようになります。\n\n\n`gitlab-triage`を使用すれば、次のことを実現できます。\n\n\n* **一貫性の確保**：定義済みのルールに基づいて、自動的にラベルを適用し、イシューを自動的に割り当てる  \n\n* **レスポンスタイムの短縮**：新たなイシューやマージリクエストに関するフィードバックを即座に得られる  \n\n* **手作業の削減**：手作業でトリアージや更新を行う必要がなくなる  \n\n* **生産性の向上**：チームが、コーディング作業やイノベーションの創出に集中できるようになる\n\n\n## `gitlab-triage`のご紹介\n\n\n`gitlab-triage`\ngemは、GitLabプロジェクトとやり取りするボットを作成できるRubyのライブラリです。作成したボットを使用すると、次のようなさまざまなアクションの実行を自動化できます。\n\n\n* **ラベル付け**：イシューやマージリクエストを自動的に分類する  \n\n* **コメントの追加**：最新情報やフィードバックの提供、または情報の提供依頼を行う  \n\n* **割り当て**：イシューやマージリクエストを適切なチームメンバーに割り当てる  \n\n* **クローズ**：解決済み、または古くなったイシューやマージリクエストをクローズする  \n\n* **作成**：特定のイベントや条件に基づいて新しいイシューを作成する  \n\n* **ほかにもさまざまなことを行えます！**\n\n\nぜひ[`gitlab-triage`\ngemリポジトリ](https://gitlab.com/gitlab-org/ruby/gems/gitlab-triage)をチェックしてみてください。\n\n\n## トリアージボットのセットアップ\n\n\nでは、最初のトリアージボットをセットアップして動かしてみましょう！\n\n\n1. gemをインストールします。（注：gemコマンドは、プログラミング言語のRubyがインストールされている場合に利用できます）。\n\n\n```bash\n\ngem install gitlab-triage\n\n```\n\n\n2. GitLab APIトークンを取得します。\n\n\n* GitLab[プロファイル設定](https://gitlab.com/-/profile/preferences)に移動します。  \n\n* 「**アクセストークン**」に移動します。  \n\n* `api`スコープを指定して、新しいトークンを作成します。  \n\n* **作成したトークンを安全な場所に保存し、このガイドがいつ頃終わるかに基づいて有効期限を設定します。**\n\n\n3. トリアージポリシーを定義します。\n\n\nプロジェクトのルートディレクトリに`.triage-policies.yml`という名前のファイルを作成します。このファイルには、ボットの動作を制御するルールを含めます。以下に簡単な例をご紹介します。\n\n\n```yaml\n\n\n---\n\n- name: \"Apply 'WIP' label\"\n  condition:\n    draft: true\n  action:\n    labels:\n      - status::wip\n\n- name: \"Request more information on old issue\"\n  condition:\n   date:\n    attribute: updated_at\n    condition: older_than\n    interval_type: months\n    interval: 12\n  action:\n    comment: |\n      {{author}} This issue has been open for more than 12 months, is this still an issue?\n```\n\n\n上記の設定では、2つのポリシーを定義しています。\n\n\n* 1つ目のポリシーは、ドラフトモードにあるすべてのイシューに`status::wip`ラベルを適用します。  \n\n* 2つ目のポリシーは、12か月間更新がないイシューに、その旨のコメントを追加します。\n\n\n4. ボットを実行します。\n\n\n以下のコマンドを使用すると、手動でボットを実行できます。\n\n\n```bash\n\ngitlab-triage -t \u003Cyour_api_token> -p \u003Cyour_project_id>\n\n```\n\n\n`\u003Cyour_api_token>`の部分をご自身のGitLab\nAPIトークンに、また`\u003Cyour_project_id>`を[ご自身のGitLabプロジェクトID](https://docs.gitlab.com/user/project/working_with_projects/#access-a-project-by-using-the-project-id)に変更してください。実行前にこれらのアクションの影響を確認したい場合は、`-n`または`--dry-run`を追加すれば、ポリシーをまずはテストできます。\n\n\n## GitLab CI/CDによる自動化\n\n\nトリアージボットの実行を自動化するには、[GitLab\nCI/CD](https://about.gitlab.com/blog/ultimate-guide-to-ci-cd-fundamentals-to-advanced-implementation/)と統合します。以下は`.gitlab-ci.yml`の設定例です。\n\n\n```yaml\n\n\ntriage:\n  script:\n    - gem install gitlab-triage\n    - gitlab-triage -t $GITLAB_TOKEN -p $CI_PROJECT_ID\n  only:\n    - schedules\n```\n\n\n上記の設定では、「triage」という名前のジョブを定義しています。このジョブは、`gitlab-triage`\ngemをインストールし、`$GITLAB_TOKEN`（定義済みの[CI/CD変数](https://docs.gitlab.com/ci/variables/)）変数と`$CI_PROJECT_ID`変数を使用してボットを実行します。`only:\nschedules`によって、ジョブが必ずスケジュールに従って実行されることを保証します。\n\n\n[スケジュール](https://docs.gitlab.com/ee/ci/pipelines/schedules.html)を設定するには、プロジェクトの「**CI/CD**」設定にアクセスし、「**スケジュール**」に進みます。新しいスケジュールを作成したら、ボットを実行する頻度（毎日、毎時間など）を設定します。\n\n\n## 高度なトリアージポリシー\n\n\n`gitlab-triage`には、さらに複雑なトリアージポリシーを作成できるように、次のような高度な機能が用意されています。\n\n\n* **正規表現**：正規表現を使用すると、より強力なパターン一致を実現できます。  \n\n* **サマリーポリシー**：関連する複数のイシューを1つのサマリーイシューにまとめます。  \n\n*\n**カスタムアクション**：[Rubyコードブロック](https://gitlab.com/gitlab-org/ruby/gems/gitlab-triage#can-i-customize)を使用してカスタムアクションを定義し、GitLab\nAPI を使ったより複雑な操作を実行できます。\n\n\nGitLabのデベロッパーアドボカシーチームによる、高度なトリアージボットの実際の使用例をご紹介します。全ポリシーは、[こちらのファイル](https://gitlab.com/gitlab-da/projects/devrel-bot/-/blob/master/.triage-policies.yml?ref_type=heads)でご覧いただけます。\n\n\n```yaml\n\n- name: Issues where DA team member is an assignee outside DA-Meta project\ni.e. DevRel-Influenced\n  conditions:\n    assignee_member:\n      source: group\n      condition: member_of\n      source_id: 1008\n    state: opened\n    ruby: get_project_id != 18 \n    forbidden_labels:\n      - developer-advocacy\n  actions:   \n    labels:\n      - developer-advocacy\n      - DevRel-Influenced\n      - DA-Bot::Skip\n```\n\n\nこちらの例では、グループ全体のイシュー（IDが18のプロジェクトに含まれるイシューを除く）から、IDが1008のグループに所属し、`developer-advocacy`というラベルが付いていないメンバーが担当者であるイシューを割り出し、ラベルを適用しています。GitLabデベロッパーアドボカシーチームは、このポリシーを使用して、チームメンバーが担当しているものの、チームのプロジェクトとして割り当てられていないイシューを探し出しています。チームのラベルを追加することで、チーム外からのコントリビュートを特定・追跡しやすくなります。\n\n\n```\n\n- name: Missing Due Dates\n  conditions:\n    ruby: missing_due_date\n    state: opened\n    labels:\n      - developer-advocacy\n    forbidden_labels:\n      - DA-Due::N/A\n      - DA-Bot::Skip\n      - DA-Status::FYI\n      - DA-Status::OnHold\n      - CFP\n      - DA-Bot::Triage\n  actions:\n    labels:\n      - DA-Bot-Auto-Due-Date\n    comment: |\n      /due #{get_current_quarter_last_date}\n```\n\n\n上記の2つ目の例では、forbidden_labelsに含まれるラベルが適用されておらず、期限を過ぎていて、`developer-advocacy`ラベルが付いているイシューをすべて探し出します。スラッシュコマンドとRubyを使って生成した日付を用いてイシューにコメントすることで、自動的に期限が更新されます。\n\n\nポリシーで使用されているRubyスクリプトは、以下のように別のファイルで定義しています。この機能を使用すれば、フィルターとアクションを柔軟に扱えます。ご覧のように、ポリシーで使用したさまざまなRubyコマンド用に関数を作成しています。\n\n\n```\n\nrequire 'json'\n\nrequire 'date'\n\nrequire \"faraday\"\n\nrequire 'dotenv/load'\n\n\nmodule DATriagePlugin\n  def last_comment_at\n    conn = Faraday.new(\n      url: notes_url+\"?sort=desc&order_by=created_at&pagination=keyset&per_page=1\",\n      headers: {'PRIVATE-TOKEN' => ENV.fetch(\"PRIV_KEY\"), 'Content-Type' => 'application/json' }\n    )\n\n    response = conn.get()\n    if response.status == 200\n      jsonData = JSON.parse(response.body)\n      if jsonData.length > 0\n        Date.parse(jsonData[0]['created_at'])\n      else\n        Date.parse(resource[:created_at])\n      end\n    else\n      Date.parse(resource[:created_at])\n    end\n  end\n\n  def notes_url\n    resource[:_links][:notes]\n  end\n\n  def get_project_id\n    resource[:project_id]\n  end\n\n  def get_current_quarter_last_date()\n    yr = Time.now.year\n    case Time.now.month\n    when 2..4\n      lm = 4\n    when 5..7\n      lm = 7\n    when 8..10\n      lm = 10\n    when 11..12\n      lm = 1\n      yr = yr + 1\n    else\n      lm = 1    \n    end\n\n    return Date.new(yr, lm, -1) \n  end\n\n  def one_week_to_due_date\n    if(resource[:due_date] == nil)\n      false\n    else\n      days_to_due = (Date.parse(resource[:due_date]) - Date.today).to_i\n      if(days_to_due > 0 && days_to_due \u003C 7)\n        true\n      else\n        false\n      end\n    end\n  end\n\n  def due_date_past\n    if(resource[:due_date] == nil)\n      false\n    else\n      Date.today > Date.parse(resource[:due_date])\n    end\n  end\n\n  def missing_due_date\n    if(resource[:due_date] == nil)\n      true\n    else\n      false\n    end\n  end\n\nend\n\n\nGitlab::Triage::Resource::Context.include DATriagePlugin\n\n\n```\n\nトリアージボットを実行する際は、次のコマンドを使用します。\n\n\n``` \n\n`gitlab-triage -r ./triage_bot/issue_triage_plugin.rb --debug --token\n$PRIV_KEY --source-id gitlab-com --source groups`  \n\n```\n\n\n- `-r`：トリアージを実行するための要件ファイルを渡します。この場合は、Ruby関数を渡します。  \n\n- `--debug`：出力の一部としてデバッグ情報を表示します。  \n\n- `--token`：有効なGitLab APIトークンを渡すために使用します。  \n\n- `--source`：検索対象のイシューのソースがグループ内またはプロジェクト内かを指定します。  \n\n- `--source-id`:： 選択したソースタイプのID（この場合はグループ）を受け取ります。\n\n\n\nもう1つの実際の活用例としては、GitLab\n[triage-ops](https://gitlab.com/gitlab-org/quality/triage-ops)プロジェクトが挙げられます。こちらはさらに複雑で、専用のトリアージボットの作成方法を学ぶのに最適です。\n\n\n## ベストプラクティス\n\n\n* **まずは簡単なものから始める**：基本的なポリシーから始めて、必要に応じて徐々に複雑な設定にしていきましょう。 \n\n* **テストは徹底的に行う**：本番環境にデプロイする前に、ステージング環境でポリシーをテストします。  \n\n* **定期的にモニタリングする**：ボットの動作をモニタリングし、想定どおりに機能しているか確認してください。 \n\n* **わかりやすい名前を付ける**：メンテナンスしやすいように、ポリシーには明確でわかりやすい名前を付けましょう。 \n\n*\n**フィルターの適用範囲に注意する**：何千ものイシューが存在する全グループを対象に、イシューを絞り込むのはおすすめしません。トリアージに時間がかかってしまう可能性があるだけでなく、GitLab\nAPIのレート制限によってプロセス自体が失敗に終わることもあります。  \n\n*\n**トリアージの際にはラベルを使って優先順位付けする**：関係ないコメントやイシューがあふれて、ほかのユーザーの邪魔になることのないよう、トリアージを行う際はラベルを使用することをおすすめします。\n\n\n## ワークフローを制御する\n\n\n`gitlab-triage`\ngemを使用すれば、GitLabワークフローを自動化して、新たなレベルの効率化を実現できます。まずはシンプルなトリアージボットの作成から始めて、徐々に高度な機能を使ってみてください。どれだけ多くの時間や作業負荷を削減できるか、きっと驚かれると思います！\n\n\n## GitLab入門シリーズ\n\n\n「GitLab入門」シリーズのその他の記事をぜひご覧ください。\n\n\n-\n[ユーザーの管理方法](https://about.gitlab.com/blog/getting-started-with-gitlab-how-to-manage-users/)\n\n\n- \n[GitLabへのプロジェクトのインポート方法](https://about.gitlab.com/blog/getting-started-with-gitlab-how-to-import-your-projects-to-gitlab/)  \n\n-\n[プロジェクト管理を極める](https://about.gitlab.com/blog/getting-started-with-gitlab-mastering-project-management/)\n",[781,802,14,944,110],"agile",{"slug":946,"featured":6,"template":679},"automating-agile-workflows-with-the-gitlab-triage-gem","content:ja-jp:blog:automating-agile-workflows-with-the-gitlab-triage-gem.yml","Automating Agile Workflows With The Gitlab Triage Gem","ja-jp/blog/automating-agile-workflows-with-the-gitlab-triage-gem.yml","ja-jp/blog/automating-agile-workflows-with-the-gitlab-triage-gem",{"_path":952,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":953,"content":959,"config":965,"_id":967,"_type":16,"title":968,"_source":18,"_file":969,"_stem":970,"_extension":21},"/ja-jp/blog/build-a-new-website-in-a-few-easy-steps-with-gitlab-pages",{"title":954,"description":955,"ogTitle":954,"ogDescription":955,"noIndex":6,"ogImage":956,"ogUrl":957,"ogSiteName":770,"ogType":771,"canonicalUrls":957,"schema":958},"GitLab Pagesで手軽に数ステップでウェブサイトを作成","このチュートリアルでは、GitLab Pagesとすぐに使えるカスタマイズ可能なテンプレートを活用して、短時間で個人用ウェブサイトを作成・公開する方法を解説します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097716/Blog/Hero%20Images/Blog/Hero%20Images/blog-image-template-1800x945%20%281%29_7c3TDgNgct9xQbmTJSw0de_1750097716096.png","https://about.gitlab.com/blog/build-a-new-website-in-a-few-easy-steps-with-gitlab-pages","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab Pagesで手軽に数ステップでウェブサイトを作成\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Alex Fracazo\"}],\n        \"datePublished\": \"2025-03-03\",\n      }",{"title":954,"description":955,"authors":960,"heroImage":956,"date":962,"body":963,"category":14,"tags":964},[961],"Alex Fracazo","2025-03-03","個人用ウェブサイトは、デジタルクリエイターやIT系のプロフェッショナルにとって単なるツールではなく、ブランドを表現する場です。しかしゼロから作るとなると、時間もお金もかかります。\n\n[GitLab Pages](https://docs.gitlab.com/user/project/pages/)なら、SSL証明書やGitLab独自のドメインなどの機能がFreeプランでも標準搭載されており、プロが作ったようなウェブサイトを簡単に公開できます。\n\nこのチュートリアルでは、GitLab Pagesを使って魅力的な個人ウェブサイトを作成する方法を紹介します。使いやすくカスタマイズ自在なテンプレートを用意しているので、簡単に自分らしいウェブサイトを作成できます。では早速始めましょう！\n\n## 準備するもの\n\n始める前に、下記を用意してください。\n\n* GitLabアカウント（[Freeプラン](https://about.gitlab.com/ja-jp/pricing/)でOK）\n* HTML/CSSの基本的な知識\n* ウェブサイトに載せるコンテンツと画像（任意）\n\nGitLabアカウントを作成し、必要なコンテンツを準備できたら、次のステップに進みましょう！\n\n## ステップ1：新規プロジェクトを作成する\n\n1. GitLabアカウントにサインインし、プロジェクトを作成します。\n\n![GitLab Pagesチュートリアル - ウェルカム画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097724/Blog/Content%20Images/Blog/Content%20Images/Capture-2025-02-27-183716_aHR0cHM6_1750097724662.png)\n\n2.「**空のプロジェクトを作成**」をクリックします。\n\n![GitLab Pagesチュートリアル - 新規プロジェクト作成画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097725/Blog/Content%20Images/Blog/Content%20Images/Capture-2025-02-27-183814_aHR0cHM6_1750097724663.png)\n\n3. プロジェクトの詳細を入力します。\n    * プロジェクト名を`yourusername.gitlab.io`に設定します。`yourusername`の部分は、ご自身のGitLabユーザー名に置き換えてください。**ヒント**：プロジェクト名は、ウェブサイトのURLに影響します。プロジェクト名を`yourusername.gitlab.io`に設定すると、ウェブサイトのURLは`https://yourusername.gitlab.io`になります（追加パスなし）。別のプロジェクト名を使用した場合は、サイトのURLは`https://yourusername.gitlab.io/project-name`になります。\n    * プロジェクトの公開範囲を「公開」に設定します。\n4 .「**プロジェクトを作成**」をクリックします。\n\n![GitLab Pagesチュートリアル - 空のプロジェクトの作成画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097725/Blog/Content%20Images/Blog/Content%20Images/image5_aHR0cHM6_1750097724666.png)\n\n![GitLab Pagesチュートリアル - カスタマイズされた「はじめに」ページ](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097725/Blog/Content%20Images/Blog/Content%20Images/image2_aHR0cHM6_1750097724668.png)\n\n## ステップ2：テンプレートファイルを追加する\n\nまず、リポジトリ内に以下の2つの新しいファイルを作成します。\n\n![GitLab Pagesチュートリアル - 個人用ページに新しいファイルを追加](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097725/Blog/Content%20Images/Blog/Content%20Images/image13_aHR0cHM6_1750097724669.png)\n\n1. まず、`index.html`を作成します。\n    * プロジェクトで「**+**」ボタンをクリックし、「**新規ファイル**」を選択します。\n    * ファイル名を`index.html`に設定します。\n![GitLab Pagesチュートリアル - 新規ファイルページ](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097725/Blog/Content%20Images/Blog/Content%20Images/image14_aHR0cHM6_1750097724671.png)\n    * HTMLコンテンツを追加します。\n        * 以下のサンプルHTMLを使用してください（プロによるアドバイス：GitLab Duo Chatに依頼すると、さらに便利な機能を備えたHTMLを生成できます）。\n\n```    \n\u003C!DOCTYPE html>\n\u003Chtml>\n\u003Chead>\n    \u003Cmeta charset=\"utf-8\"/>\n    \u003Ctitle>[名前] - [役職]\u003C/title>\n    \u003Cmeta name=\"description\" content=\"[Your Name] is a [Your Title].\"/>\n    \u003Cmeta name=\"author\" content=\"[Your Name]\"/>\n    \u003Cmeta property=\"og:title\" content=\"[Your Name]\" />\n    \u003Cmeta property=\"og:description\" content=\"[Your Title]\" />\n    \u003Cmeta property=\"og:image\" content=\"og.png\" />\n    \u003Cmeta name=\"viewport\" content=\"width=device-width,initial-scale=1\"/>\n    \u003Clink href=\"https://unpkg.com/basscss@8.0.2/css/basscss.min.css\" rel=\"stylesheet\">\n    \u003Clink href=\"style.css\" rel=\"stylesheet\">\n    \u003Clink rel=\"shortcut icon\" type=\"image/png\" href=\"favicon.png\"/>\n\u003C/head>\n\u003Cbody>\n\u003Cdiv class=\"content\" id=\"content\">\n  \u003Cdiv class=\"p2 sm-p4 mt2 sm-mt4 mb2 sm-mb4\">  \n  \u003Cdiv class=\"fade mt3\">\n    \u003Ca target=\"_new\" href=\"[Your Linkedin URL]\">\n      \u003Cimg class=\"photo\" src=\"profile.png\" width=\"64\" height=\"64\">\n    \u003C/a>\n  \u003C/div>\n  \u003Ch2 class=\"mb0 mt4 fade\">\n    Hello, I'm [Your Name] \n    \u003Cspan class=\"smallcaps\">(\u003C/span>\n    \u003Ca target=\"_new\" href=\"[Your Linkedin URL]\">@[Your Handle]\u003C/a>\n    \u003Cspan class=\"smallcaps\">)\u003C/span>\n  \u003C/h2>\n  \u003Ch2 class=\"mt0 mb4 fade gray\">\n    I'm a [Your Title]\n  \u003C/h2>\n  \u003Cp class=\"mb4 fade\">\n    I'm a [Your Role] at [Your Company], [Brief company description].\n  \u003C/p>\n  \u003Cdiv class=\"fade\">\n    \u003Cp class=\"fade mb4\">\n      Your personal statement about what you do and what you're interested in. Add your contact preferences here.\n    \u003C/p>\n  \u003C/div>\n  \u003Cp class=\"fade mb4\">\n    \u003Cspan class=\"gray\">—\u003C/span> \n    [Your Name] \n    \u003Cspan class=\"smallcaps>(\u003C/span>\n    \u003Ca target=\"_new\" href=\"[Your Linkedin URL]\">@[Your Handle]\u003C/a>\n    \u003Cspan class=\"smallcaps\">)\u003C/span>\n  \u003C/p>\n  \u003C/div>\n\u003C/div>\n\u003C/body>\n\u003C/html> \n```\n\n* コミットメッセージを追加します（例：「index.htmlを追加」）。\n  * 「**変更のコミット**」をクリックします。\n\n2. `style.css`を作成します（上記と同じ手順）。\n\n```\nbody {\n  margin: 0;\n  padding: 0;\n  background: #000;\n  color: #f4f4f4;\n  font-family: \"Graphik Web\", system-ui, -apple-system, BlinkMacSystemFont, \"Helvetica Neue\", \"Helvetica\", \"Segoe UI\", Roboto, Ubuntu, sans-serif;\n  font-weight: 400;\n  font-smooth: antialiased;\n  -webkit-font-smoothing: antialiased;\n  -moz-osx-font-smoothing: grayscale;\n}\n\na {\n  color: #ff310a;\n  text-decoration: none;\n}\n\na:hover {\n  color: #CFEF54\n}\n\n.content {\n  max-width: 40rem;\n  margin: 0 auto;\n}\n\nimg.photo {\n  border-radius: 50%;\n}\n\np {\n  font-size: 1.5rem;\n  line-height: 1.4;\n  margin: 0;\n  letter-spacing: -0.05rem;\n}\n\nh2 {\n  font-weight: 400;\n  line-height: 1.3;\n  letter-spacing: -0.05rem;\n}\n\n.smallcaps {\n  font-variant: small-caps;\n  color:#333;\n}\n\n.gray{\n  color: #999;\n}\n\n.preloader {\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  height: 100vh;\n  height: -moz-available;\n  height: -webkit-fill-available;\n  height: fill-available;\n  width: 100%;\n  background: #000;\n  position: fixed;\n  top: 0;\n  left: 0;\n  z-index: 9999;\n  transition: opacity 0.3s linear;\n  transform: translate3d(0, 0, 0);\n}\n\nbody.loaded .preloader {\n  opacity: 0;\n}\n\n.fade {\n  animation: fadeIn 1s ease-in-out both;\n}\n\n.fade:nth-child(2) {\n\tanimation-delay: 1s;\n}\n\n.fade:nth-child(3) {\n\tanimation-delay: 2s;\n}\n\n.fade:nth-child(4) {\n\tanimation-delay: 3s;\n}\n\n.fade:nth-child(5) {\n\tanimation-delay: 4s;\n}\n\n.fade:nth-child(6) {\n\tanimation-delay: 5s;\n}\n\n.fade:nth-child(7) {\n\tanimation-delay: 6s;\n}\n\n.fade:nth-child(8) {\n\tanimation-delay: 7s;\n}\n\n.fade:nth-child(9) {\n\tanimation-delay: 8s;\n}\n\n.fade:nth-child(10) {\n\tanimation-delay: 9s;\n}\n\n.fade:nth-child(11) {\n\tanimation-delay: 10s;\n}\n\n.fade:nth-child(12) {\n\tanimation-delay: 11s;\n}\n\n.fade:nth-child(13) {\n\tanimation-delay: 12s;\n}\n\n@keyframes fadeIn {\n\tfrom {\n\t\topacity: 0;\n\t\ttransform: translate3d(0, 0%, 0);\n\t}\n\tto {\n\t\topacity: 1;\n\t\ttransform: translate3d(0, 0, 0);\n\t}\n} \n\n```\n\n## ステップ3：GitLab CIファイルを設定する\n\nGitLabによるサイトのビルドおよびデプロイ方法を指定するGitLab CI設定ファイルを作成する方法は2通りあります。\n\n![GitLab Pagesチュートリアル - CI/CDパイプライン画面を使用したワークフローの最適化画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752378215/Blog/ny6eumkybcrlprelf7ze.png)\n\n**オプション1 ：パイプラインエディタを使用する（推奨）**\n\n1. プロジェクト内で**「ビルド」>「パイプラインエディタ」**の順にアクセスします。\n\n![GitLab Pagesチュートリアル - パイプラインエディタ／mainブランチ](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097725/Blog/Content%20Images/Blog/Content%20Images/image3_aHR0cHM6_1750097724672.png)\n\n2. `.gitlab-ci.yml`ファイルが自動的に作成されます。\n3. 以下の設定をコピー＆ペーストします。\n\n```\npages:\n  stage: deploy\n  script:\n    - mkdir .public\n    - cp -r * .public\n    - mv .public public\n  artifacts:\n    paths:\n      - public\n  only:\n    - main\n```\n\n![GitLab Pagesチュートリアル - ウィンドウ内の新規ファイル](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097725/Blog/Content%20Images/Blog/Content%20Images/image12_aHR0cHM6_1750097724673.png)\n\n**オプション2：手動で作成する**\n\nファイルを手動で作成する場合：\n1. 新規ファイルを作成し、名前を`.gitlab-ci.yml`に設定します。\n2. 以下の設定を追加します。\n\n```\npages:\n  stage: deploy\n  script:\n    - mkdir .public\n    - cp -r * .public\n    - mv .public public\n  artifacts:\n    paths:\n      - public\n  only:\n    - main\n```\n\nGitLab CI設定ファイルは、サイトの稼働に重要な要素です。このファイルが、GitLabにサイトのビルドとデプロイ方法を指示します。\n\n各部分がどのような役割を果たしているのかを見てみましょう。\n\n**スクリプト部分**\n\n```\nscript:\n  - mkdir .public\n  - cp -r * .public\n  - mv .public public\n```\n\nこれにより、`public`というフォルダが作成され、ウェブサイトの全ファイルがその中にコピーされます。GitLab Pagesはこのフォルダを使ってサイトを公開しますが、必要に応じて[公開フォルダを変更](https://docs.gitlab.com/user/project/pages/introduction/#customize-the-default-folder)することもできます。\n\n**only部分**\n\n```\nonly:\n  - main\n\n```\n\nこれにより、GitLabはmainブランチに変更が加えられた場合のみ、サイトの更新を行い、実験的な変更が誤ってサイトに反映されるのを防ぎます。\n\n## ステップ4：ウェブサイトをデプロイする\n1. すべての変更をコミットします。\n2. **「ビルド」>「パイプライン」**の順にアクセスして、デプロイの進行状況を確認します。\n3. パイプラインが完了するのを待ちます（緑のチェックマークで完了を確認）。\n\n![GitLab Pagesチュートリアル - 新規ページ用のパイプラインを実行中](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097725/Blog/Content%20Images/Blog/Content%20Images/image4_aHR0cHM6_1750097724674.png)\n\n![GitLab Pagesチュートリアル - 新規ページ用のパイプライン成功](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097725/Blog/Content%20Images/Blog/Content%20Images/image6_aHR0cHM6_1750097724676.png)\n\n## ステップ5：ウェブサイトにアクセスする\n\nパイプラインが正常に完了すると、ウェブサイトが**https://[yourusername].gitlab.io/**で利用可能になります。\n\nデプロイされたウェブサイトの概要や追加設定は、プロジェクトの**「デプロイ」>「ページ」**セクションで確認できます。このセクションでは、次のような役立つ情報を確認することができます。\n\n* ウェブサイトにアクセスするためのURL   \n* ドメイン設定\n* GitLabでは、デフォルトで「**一意のドメイン**」が有効になっています。GitLabが提供するドメインを使用する場合は、必ずこれを無効にしてください。詳しくは、[独自ドメインに関するドキュメント](https://docs.gitlab.com/ee/user/project/pages#unique-domains)をご覧ください。\n* HTTPS証明書のステータス\n* 最近のデプロイ\n* 追加の設定オプション\n* カスタムドメイン\n\nこのセクションは、カスタムドメインの設定やデプロイのトラブルシューティングを行う際に、特に役立ちます。\n\n**サイトをカスタマイズする**\n\n![GitLab Pagesチュートリアル - サイトのカスタマイズ](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752378219/Blog/uhkkbfzexgpyooswyyye.png)\n\n1. `index.html`内のすべての「Your...」プレースホルダーを自分の情報に置き換えます。\n\n![GitLab Pagesチュートリアル - ページのカスタマイズのためにファイルをアップロード](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097725/Blog/Content%20Images/Blog/Content%20Images/image1_aHR0cHM6_1750097724677.png)\n\n2. 画像を追加します。\n    - profile.png - 自分のプロフィール写真（64x64px）\n    - favicon.png - サイトのファビコン（32x32px）\n    - Og.png - SNSプレビュー用のOpenGraph画像（1200x630px）\n\n**動作を確認する**\n\nGitLabを使い慣れている場合は、[自分のリポジトリをフォーク](https://gitlab.com/fracazo/fracazo.gitlab.io)してすぐに作業を始めることができます。\n\n最終結果はこちらから確認できます。\n[https://fracazo.gitlab.io/](https://fracazo.gitlab.io/)\n\n**よくある問題と解決策**\n- GitLabでは、デフォルトでPagesプロジェクトの「一意のドメイン」が有効になっています。シンプルなGitLab提供のドメイン（`username.gitlab.io`など）を使用するには、**「デプロイ」>「ページ」**の順にアクセスし、「一意のドメインを使用」を無効にしてください。一意のドメインはアセットパスの処理などの面で技術的な利点がありますが、個人のウェブサイトの場合はよりシンプルなURL構造が好まれます。\n- パイプラインが失敗した場合、`.gitlab-ci.yml`ファイルで`master`ではなく、`main`を使用しているかどうかを確認してください。\n- GitLab Pagesが機能するには、グループとプロジェクトが公開に設定されている必要があります。\n- パイプラインでジョブが失敗した場合、ジョブログでエラーメッセージを確認して解決策を見つけましょう。\n\nGitLab Pagesとご紹介したテンプレートを使用すれば、すぐにビジネス用・個人用のウェブサイトを立ち上げることができます。このテンプレートはシンプルでレスポンシブ化されており、カスタマイズも簡単です。ご自身のキャリアの成長に合わせて、GitLabを使用して直接サイトを簡単に更新できます。\n\nGitLabのCI/CD機能を活用すれば、デプロイプロセスを自動化し、魅力的なコンテンツの作成に注力できます。\n\n一番のメリットは、これらすべてがGitLabのFreeプランで利用できるという点です。そのため、個人プロジェクト、ドキュメントサイト、または小規模なビジネスサイトを無料でホストする際に最適なオプションです。高度な機能と設定については、[Pagesのドキュメント](https://docs.gitlab.com/ee/user/project/pages/)をご覧ください。\n\n## GitLab Pagesの今後の取り組み\nGitLabでは、クリエイターやデベロッパーの皆さまのために、GitLab Pagesの改善に常に取り組んでいます。近日リリース予定の素晴らしい改善点をいくつかご紹介します。\n\n### ドメイン管理の簡素化\nGitLab Pagesでのドメインの管理が今まで以上に簡単になるアップデートが追加される予定です。新しいダッシュボードには、すべてのドメイン設定が1か所で簡単にアクセスできるように統合され、管理がよりスムーズになります。\n\nさらに、DNSやSSL証明書のステータスについてリアルタイムで最新情報を受け取れるようになるため、ドメインのセキュリティと安定性を維持しやすくなります。\n\n### カスタムドメインの設定\nガイドに従うだけで、簡単にカスタムドメインを設定できるようになります。詳しくガイドには、各手順の説明がわかりやすく記載されています。さらに、カスタムドメインを設定して、古いウェブサイトから新しいサイトへの訪問者の自動リダイレクトも行えるようになり、すべてのトラフィックを1つのメインサイトに集められるようになる予定です。カスタムドメインに関する詳細は、[こちら](https://docs.gitlab.com/ee/user/project/pages/custom_domains_ssl_tls_certification/index.html#set-up-a-custom-domain)をご確認ください。\n\n> 今すぐ[GitLabのFreeプラン](https://about.gitlab.com/pricing/)でGitLab Pagesを使い始めましょう！\n\n## 関連リンク\n- [GitLab Pagesの機能：アプリレビューと複数のウェブサイトのデプロイ](https://about.gitlab.com/blog/gitlab-pages-features-review-apps-and-multiple-website-deployment/)\n- [GitLab Pages：複数のウェブサイトのデプロイに関するドキュメント](https://docs.gitlab.com/user/project/pages/#parallel-deployments)\n- [GitLab Pagesを使用してホストしているウェブサイトの例](https://gitlab.com/pages)",[802,781],{"slug":966,"featured":6,"template":679},"build-a-new-website-in-a-few-easy-steps-with-gitlab-pages","content:ja-jp:blog:build-a-new-website-in-a-few-easy-steps-with-gitlab-pages.yml","Build A New Website In A Few Easy Steps With Gitlab Pages","ja-jp/blog/build-a-new-website-in-a-few-easy-steps-with-gitlab-pages.yml","ja-jp/blog/build-a-new-website-in-a-few-easy-steps-with-gitlab-pages",{"_path":972,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":973,"content":979,"config":985,"_id":987,"_type":16,"title":988,"_source":18,"_file":989,"_stem":990,"_extension":21},"/ja-jp/blog/gitlab-17-9-release",{"title":974,"description":975,"ogTitle":974,"ogDescription":975,"noIndex":6,"ogImage":976,"ogUrl":977,"ogSiteName":770,"ogType":771,"canonicalUrls":977,"schema":978},"GitLab 17.9リリース","GitLab 17.9でリリースした最新機能をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662202/Blog/Hero%20Images/product-gl17-blog-release-cover-17-9-0093-1800x945-fy25.png","https://about.gitlab.com/blog/gitlab-17-9-release","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 17.9リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2025-02-20\",\n      }",{"title":974,"description":975,"authors":980,"heroImage":976,"date":981,"body":982,"category":14,"tags":983,"updatedDate":984},[676],"2025-02-20","**GitLab 17.9がリリースされ、生成AIの大規模言語モデル（LLM)を閉じた環境にデプロイ可能になったGitLab Duoの一般提供を開始しました**\n\nこのたび、GitLab 17.9のリリースを発表しました。このリリースでは、生成AIの大規模言語モデル(LLM)を閉じた環境にデプロイ可能になったGitLab Duoの一般提供、複数のGitLab Pagesサイトを並列デプロイで実行できる機能、VS CodeやJetBrains IDEでGitLab Duo Chatにプロジェクトファイルを取り込んでより深い解釈を可能にするオプション、古くなったパイプラインの自動削除など、さまざまな機能が追加されました。  \nこれらの機能は、今回のリリースに含まれる110件以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。  \n\nGitLab 17.9には、GitLabコミュニティのユーザーから322件ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。\n\n来月のリリースで予定されている内容を先取りするには、17.10リリースのキックオフビデオも視聴できる今後のリリースページをご覧ください。\n\n> [GitLab 17.9では、生成AIの大規模言語モデル（LLM)を閉じた環境にデプロイ可能になったGitLab Duoの一般提供を開始しました。クリックしてSNSで共有しましょう](https://x.com/intent/post?text=GitLab+17.9%E3%81%A7%E3%81%AF%E3%80%81%E7%94%9F%E6%88%90AI%E3%81%AE%E5%A4%A7%E8%A6%8F%E6%A8%A1%E8%A8%80%E8%AA%9E%E3%83%A2%E3%83%87%E3%83%AB%EF%BC%88LLM%29%E3%82%92%E9%96%89%E3%81%98%E3%81%9F%E7%92%B0%E5%A2%83%E3%81%AE%E3%83%87%E3%83%97%E3%83%AD%E3%82%A4%E3%81%8C%E5%8F%AF%E8%83%BD%E3%81%AB%E3%81%AA%E3%81%A3%E3%81%9FGit+Lab+Duo%E3%81%AE%E4%B8%80%E8%88%AC%E6%8F%90%E4%BE%9B%E3%82%92%E9%96%8B%E5%A7%8B%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82&url=https%3A%2F%2Fabout.gitlab.com%2Fja-jp%2Fblog%2F2025%2F02%2F20%2Fgitlab-17-9-release%2F)\n\n## 今月の[MVP](https://about.gitlab.com/community/mvp/)は[Salihu Dickson](https://gitlab.com/salihudickson)さんが受賞\n\nMVPには、誰もが[GitLabコミュニティのコントリビューターをMVPに推薦できます](https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490)。現在の候補者を応援したり、他の誰かをノミネートしてみませんか🙌\n\n今回、コミュニティから200件以上の反響を集めた待望の[Wikiページへのコメント機能](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171764)の開発を実装した、[Salihu Dickson](https://gitlab.com/salihudickson)さんの素晴らしい貢献を称え、MVPとして表彰できることを嬉しく思います！\n\n\u003Cbr>\n\u003Cbr>\n\u003Cbr>\n\n## GitLab 17.9でリリースされた主な改善点\n\n### セルフホストモデルが可能になったGitLab Duoの一般提供を開始\n\nSaaS: -\u003Cbr>\nSelf-Managed: Ultimate、Duo Enterprise\n\nこれにより、選択した大規模言語モデル（LLM）を自社のインフラストでホストし、それを GitLab Duo のコード提案やチャットのソースとして設定できるようになりました。この機能は、GitLab Ultimate \\+ Duo Enterpriseライセンスを持つセルフホスト型GitLabで一般提供が開始されました。\n\nセルフホストモデルが可能になったGitLab Duoを使用することで、オンプレミスまたはプライベートクラウドにホストされたモデルを GitLab Duo Chat やコード提案のソースとして利用できます。現在、Mistralモデル（vLLM または AWS Bedrock上でのオープンソース型モデル）、AWS BedrockのClaude 3.5 Sonnet、Azure OpenAIのOpenAIモデルをサポートしています。セルフホストモデルを活用することで、生成AIの力を最大限活かしながら、外部サービスに依存することなくデータ主権とプライバシーを確保できます。\n\nイシュー[512753](https://gitlab.com/gitlab-org/gitlab/-/issues/512753)から、ぜひフィードバックをお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/gitlab_duo_self_hosted/)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/517102)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/SH-UI.png\">\n\n### 複数のGitLab Pagesサイトを並列デプロイで実行可能に\n\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\n並列デプロイを使用して、複数のバージョンのGitLab Pagesサイトを同時に作成できるようになりました。各デプロイには、指定したプレフィックスに基づいて一意のURLが設定されます。たとえば、独自ドメインを指定した場合は`project-123456.gitlab.io/prefix`から、独自ドメインを指定しない場合は`namespace.gitlab.io/project/prefix`からサイトにアクセスできます。\n\nこの機能は、特に以下のような場合に役立ちます。\n\n- デザインの変更やコンテンツの更新をプレビューする  \n- 開発中のサイトの変更内容をテストする  \n- マージリクエストによる変更内容を確認する  \n- 複数のサイトのバージョンを保守する（ローカライズされたコンテンツなど）\n\nデフォルトでは、並列デプロイは24時間後に自動的に失効します。過去のデプロイが蓄積するのを防ぎ、効率的にストレージを管理できます。ただし、有効期間をカスタマイズしたり、デプロイが失効されないように設定したりすることが可能です。マージリクエストから作成された並列デプロイは、マージリクエストがマージされた、または完了したタイミングで削除（自動クリーンアップ）されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/pages/#parallel-deployments)\u003Cbr>\n\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14434)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/pages_pd_ga.png\">\n\n### VS CodeやJetBrains IDEでGitLab Duo Chatにプロジェクトファイルの追加が可能に\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\u003Cbr>\nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nプロジェクトファイルをVS CodeやJetBrainsのGitLab Duo Chatに直接追加して、より強力でコンテキストに対応したAIアシストを利用できるようになりました。\n\nGitLab Duo Chatにプロジェクトファイルを追加することで、Duo Chatは特定のコードベースをより深く理解し、コンテキストに沿った正確な回答を提供できるようになります。このようなコンテキストアウェアネス（状況や背景を理解する能力）により、より適切なGitLab Duoコードの説明、デバッグに関する的確なサポート、既存のコードベースに密接に沿った提案が提供されます。この素晴らしい新機能に関するフィードバックをお待ちしています。ぜひ[フィードバック](https://gitlab.com/gitlab-org/gitlab/-/issues/492443)イシューからご意見をお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/gitlab_duo_chat/examples.html#ask-about-specific-files) \u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15183)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/ycBgDBaUS9M?si=M1nflRQ0CFbFu0YA\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### Sysboxを用いたワークスペースコンテナのサポート\n\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\nGitLabワークスペースにおいて、開発環境でコンテナのビルドと実行を直接行えるようになりました。[Sysboxを使用して](https://docs.gitlab.com/ee/user/workspace/configuration.html#with-sysbox)設定されたKubernetesクラスター上でワークスペースを実行している場合、追加の設定なしでコンテナのビルドと実行が可能です。\n\nこの機能はGitLab 17.4で[sudoアクセス機能](https://about.gitlab.com/releases/2024/09/19/gitlab-17-4-released/#secure-sudo-access-for-workspaces)の一部として提供されており、GitLabワークスペース環境で完全なコンテナワークフローを維持できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/workspace/configuration.html#build-and-run-containers-in-a-workspace)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/452464)\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/ycBgDBaUS9M?si=t4o-ONBzWEgb5oL1\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### カスタムdevfileなしでワークスペースが作成可能に\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\nこれまでは、ワークスペースを設定する際に、`devfile.yaml`設定ファイルを作成する必要がありました。本リリースから、GitLabでは一般的な開発ツールを含むデフォルトファイルが提供されるようになりました。この機能強化により、次のことが可能になります。\n\n- 設定の手間がかからなくなる  \n- どのプロジェクトからでも素早くワークスペースを作成できる  \n- 一般的な開発ツールが事前に設定されており、すぐに利用可能  \n- 設定に時間をかけずに、開発に集中できる\n\n追加設定や設定手順の手間を省いて、すぐにワークスペースを作成して開発を始めることができます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/workspace/#gitlab-default-devfile)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14644)\u003Cbr>\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/default_devfile.png\">\n\n### GitLab管理の[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)リソース\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\n[GitLab管理のKubernetesリソース](https://docs.gitlab.com/ee/user/clusters/agent/kubernetes_managed_resources.html)を活用すれば、[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)へのアプリケーションのデプロイプロセスの自動化が進み、きめ細かい制御も可能になります。これまでは、環境ごとに手動で[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)リソースを設定する必要がありましたが、本リリースではGitLab管理の[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)リソースを使用して、リソースを自動的にプロビジョニングして管理できるようになりました。\n\nGitLab管理の[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)リソースを使用すると、次のことを行えます。\n\n- 新しい環境のネームスペースとサービスアカウントを自動的に作成する  \n- ロールバインディングによってアクセス権限を管理する  \n- ほかに必要な[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)リソースを設定する\n\nデベロッパーがアプリケーションをデプロイすると、GitLabは用意されたリソーステンプレートに基づいて必要な[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)リソースを自動的に作成します。これにより、デプロイプロセスが効率化されるほか、環境間の一貫性が保たれます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/clusters/agent/managed_kubernetes_resources.html)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16130)\u003Cbr>\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/deploy-gitlabmanaged-kubernetes-resources.png\">\n\n### より簡単にプロジェクト環境内のデプロイ情報にアクセスできるように\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nこれまでプロジェクト内のデプロイの概要を把握するのに苦労したことはありませんか？本リリースでは、各環境をいちいち展開しなくても、環境リストで最近のデプロイの詳細を閲覧できるようになりました。環境リストには、各環境における最新の成功したデプロイが表示されます。成功したデプロイがない場合は、試行された最新のデプロイが表示されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/environments/)  \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/505770)\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/deploy-surface-deployment-information-to-the-environment-list-view.png\">\n\n### Wikiページのコメント\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\n本リリースからWikiページに直接コメントを追加できるようになりました。本来ドキュメントは静的なものですが、本機能を活用することでドキュメントを意見交換を伴う共同作業の場として使えるようになります。\n\nWikiページのコメントやスレッドは、チームが次のことを行うのに役立ちます:\n\n- コンテンツに沿ってドキュメント上で直接議論する\n- 改善点や修正案を提案する\n- ドキュメントを正確かつ最新の状態に保つ\n- 経験や専門知識を共有する\n\nWikiコメントを活用することで、ドキュメントが単なる記録ではなく、プロジェクトの進行に合わせて進化する「生きたドキュメント」になります。チームは、直接的なフィードバックや意見交換を通じて内容をリアルタイムで更新し続けることができます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/discussions/)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14062)\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/Qnc8jXIqMqw?si=yse1OJsbNM0O4TCL\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### ワークフローの可視性の強化：マージリクエストのレビュー時間に関する新たなインサイト\n\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\n開発ワークフローの追跡を改善するために、[バリューストリーム分析](https://about.gitlab.com/solutions/value-stream-management/)（VSA）に新しいイベント「*Merge request last approved at*（*マージリクエストが最後に承認されたタイミング）*」が追加されました。[マージリクエストの承認](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/)イベントは、レビュー段階の終了と、最終的なパイプラインの実行またはマージステージの開始を記録します。たとえば、マージリクエストの総レビュー時間を計算するには、VSAステージを作成して、開始イベントとして「*Merge request reviewer first assigned（マージリクエストのレビュアーが最初にアサイン）*」を、また終了イベントとして「*Merge request last approved at （マージリクエストが最後に承認されたタイミング）*」を指定します。\n\nこの機能強化により、チームはレビュー時間に関するインサイトを得ることができ、レビューを最適化しやすくなります。、結果として、開発全体のサイクルタイムが短縮され、そしてソフトウェアデリバリーをより迅速に行えるようになります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/value_stream_analytics/#value-stream-stage-events) \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/503754)\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/17_9_vsa_last_approved.png\">\n\n### 脆弱性リスクの優先順位付けに役立つEPSS、KEV、およびCVSS（共通脆弱性評価システム）データ\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\n本リリースで、次の脆弱性リスクデータのサポートを追加しました。\n\n- 悪用予測スコアリングシステム（EPSS）  \n- 悪用されている既知の脆弱性（KEV）  \n- 共通脆弱性識別子（CVE）\n\nこれらのデータを使用して、依存関係やコンテナイメージにおける脆弱性のリスクを効率的に優先順位付けできるようになりました。このデータは、脆弱性レポートおよび脆弱性の詳細ページで確認できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/vulnerabilities/risk_assessment_data.html)\u003Cbr>  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/11544)\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/srm_epss_cvss_kev.png\">\n\n### UIからDASTスキャンの詳細設定が可能に\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\n複雑なアプリケーションを効果的にテストするには、セキュリティチームがDASTスキャンを柔軟に設定できる必要があります。これまでは、UIからDASTスキャンを設定する際に利用できる設定オプションが限られていたため、特定のセキュリティ要件が求められるアプリケーションではスキャンがうまく行えないことがありました。そのため、簡単なセキュリティ評価を行う場合でも、パイプラインベースのスキャンを使用する必要がありました。\n\n本リリースから、UIからDASTスキャンを設定する際にも、パイプラインベースのスキャンの利用時と同様の詳細な設定が、可能になりました。これには以下が含まれます。\n\n- カスタムヘッダーやクッキーを含む完全な認証設定  \n- 最大ページ数、最大深度、除外URLなどの正確なクロール設定  \n- 高度なスキャンのタイムアウトと再試行  \n- クロールするリンクの最大件数やDocument Objet Model（DOM）の深度など、カスタムスキャナーの動作  \n- 特定の脆弱性タイプを対象としたスキャンモード\n\nこれらの設定を再利用可能なプロファイルとして保存することで、複数のアプリケーション間で一貫したセキュリティテストを行えます。すべての変更は監査イベントによって追跡されるため、スキャン設定が追加、編集、削除されたタイミングを把握できます。\n\nこのような制御の強化により、詳細な監査証跡を使用してコンプライアンスに準拠したより効果的なセキュリティスキャンを実行できます。パイプライン設定の管理に時間がかからないため、アプリケーションごとに適切なスキャンを素早く実行し、脆弱性を迅速に発見して修正できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/dast/on-demand_scan.html)\u003Cbr>  \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/16057)\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/dast_parity.png\">\n\n### CI/CDパイプラインの自動クリーンアップ\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nこれまでは、古くなったCI/CDパイプラインを削除する場合、API経由で行う必要がありました。\n\nGitLab 17.9では、CI/CDパイプラインの有効期限を設定できるプロジェクト設定が導入され、指定した保持期間よりも古いパイプラインと関連するアーティファクトは自動的に削除されるようになりました。数多くのパイプラインを実行し、大きなアーティファクトを作成するプロジェクトはディスク使用量を圧迫する原因になりますが、この機能により不要なパイプラインやアーティファクトが自動で削除されるため、、ディスク使用量が抑えられ、さらに全体的なパフォーマンスの向上にもつながります。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/pipelines/settings.html#automatic-pipeline-cleanup)\u003Cbr> \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/338480)\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/verify_auto_pipeline_cleanup.png\">\n\n## GitLab 17.9のリリースに含まれるその他の改善点\n\n### REST APIでグループからプロジェクトのインテグレーションを管理\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nこれまで、グループからプロジェクトのインテグレーションを管理する際は、GitLab UIから行う必要がありました。本リリースでは、REST APIを使用してこれらのインテグレーションを管理できるようになりました。\n\nこの場を借りて、[最初にコミュニティにコントリビュート](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/148283)してくれた[Van](https://gitlab.com/van.m.anderson)さんに感謝します。Vanさんのコントリビュート後、GitLabが引き継いで実装しました。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/group_integrations.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/328496)\n\n### GitLab Pagesへのアクセスをグループレベルで制御\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nGitLab Pagesへのアクセスをグループレベルで制限できるようになりました。グループオーナーは、この設定を有効にするだけで、グループとそのサブグループ内のすべてのGitLab Pagesサイトをプロジェクトメンバーのみに限定公開できます。この一元管理により、個々のプロジェクト設定を変更しなくて済むため、セキュリティ管理が簡素化されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/pages/pages_access_control.html#restrict-pages-access-to-project-members-for-the-group-and-its-subgroups)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/254962)\n\n### 作業アイテム用GraphQL APIにクエリフィルターを追加\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\n作業アイテム用のGraphQL APIに新たなクエリフィルターが追加され、次の条件で絞り込めるようになりました。\n\n- 作成日、更新日、完了日、期日\n- ヘルスステータス\n- ウェイト\n\nこれらの新しいフィルターを使用することで、APIを介して作業アイテムをクエリおよび整理する際に、より細かい制御が可能になります。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/graphql/reference/)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/513308)\n\n### GitLab Runner 17.9\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\n本日、GitLab Runner 17.9もリリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドのエージェントです。GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。\n\n新機能:\n- [Runnerオートスケーラーインスタンス用のヘルスチェックを追加](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38271)\n- [Runner準備段階の所要時間をヒストグラムメトリクスとして追加](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37471)\n- [Kubernetesエグゼキューターでサービスコンテナに任意の名前を付けられるように](https://gitlab.com/gitlab-org/gitlab/-/issues/421131)\n\nバグ修正:\n- [GitLab RunnerがS3 Express One Zoneからキャッシュを取得できない](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38484)\n- [Kubernetes上のGitLab RunnerがAWS Spotインスタンスに対して「runner_system_failure」ではなく「script_failure」と報告する](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37911)\n\nすべての変更の一覧は、GitLab Runnerの[変更履歴](https://gitlab.com/gitlab-org/gitlab-runner/blob/17-9-stable/CHANGELOG.md)で確認できます。\n\n[ドキュメント](https://docs.gitlab.com/runner/) \n\n### GitLabとKubernetesとの統合に関する入門ガイド\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\n本リリースでは、新しい[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)入門ガイドを追加しました。このガイドでは、GitLabとFluxCDを使用してアプリケーションを直接[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)にデプロイする方法を説明しています。これらのチュートリアルはわかりやく、[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)に関する深い知識がなくても完了できます。そのため、初心者でも経験豊富なユーザーでもGitLabと[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)を統合する方法を理解していただけます。\n\nまた、[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)入門ガイドには、内容を補完するために、GitLabを[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)環境に統合する際の一連の推奨事項も含めました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/clusters/agent/getting_started)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/505216)\n\n### Cargo、Conda、Cocoapods、SwiftプロジェクトでSBOMを用いた依存関係スキャンを有効にする\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\nGitLab 17.9のリリースに伴い、コンポジション解析チームがSBOM（ソフトウェア部品表）を用いた依存関係スキャンへの移行を開始します。この移行には、新たな依存関係スキャンアナライザーが導入されます。このアナライザーはGemnasiumに代わるものです。Gemnasiumはバージョン18.0でサポートを終了しますが、GitLab 19.0までは引き続き使用可能です。\n\nSBOMを活用した依存関係スキャンのアプローチにより、対応言語の拡充、GitLabプラットフォーム内の統合強化とユーザーエクスペリエンスの向上、および業界標準のレポート形式（SBOMベースのスキャンとレポート）への移行という点で、お客様をより適切にサポートできるようになります。GitLab 17.9の時点で、新しい依存関係スキャンアナライザーは次のプロジェクトおよびファイル形式の場合、`latest`の依存関係スキャンCI/CDテンプレート（`Dependency-Scanning.latest.gitlab-ci.yml`）で、デフォルトで有効になります。\\* `conda-lock.yml`ファイルでCondaを使用しているC/C++/Fortran/Go/Python/Rプロジェクト\\* `podfile.lock`ファイルでCocoapodsを使用しているObjective-Cプロジェクト\\* `cargo.lock`ファイルでCargoを使用しているRustプロジェクト\\* `package.resolved`ファイルでSwiftを使用しているSwiftプロジェクト\n\nこの変更に伴い、新しいCI/CD変数として`DS_ENFORCE_NEW_ANALYZER`（デフォルトでは`false`）が導入されます。\n\nこの方法によって、`latest`テンプレートを使用しているすべての既存ユーザーは、デフォルトでGemnasiumアナライザーを引き続き利用でき、上記のファイル形式では新しい依存関係スキャンアナライザーが自動的に有効になります。\n\n新しい依存関係スキャンへの移行を希望する既存ユーザーは、（プロジェクト、グループ、またはインスタンスレベルで）`DS_ENFORCE_NEW_ANALYZER`を`true`に設定してください。この変更の詳細については、[非推奨化のお知らせ](https://docs.gitlab.com/ee/update/deprecations.html?removal_milestone=18.0#dependency-scanning-upgrades-to-the-gitlab-sbom-vulnerability-scanner)と関連する[移行ガイド](https://docs.gitlab.com/ee/user/application_security/dependency_scanning/migration_guide_to_sbom_based_scans.html)をご参照ください。\n\n新しい依存関係スキャンアナライザーを一切使用したくない場合は、CI/CD変数`DS_EXCLUDED_ANALYZERS`を`dependency-scanning`に設定する必要があります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/dependency_scanning/dependency_scanning_sbom/)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/519597)\n\n### マルチコアAdvanced SASTがより高速なスキャンを提供\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\nAdvanced SAST で、パフォーマンス向上のためのオプトイン機能としてマルチコアスキャンが利用できるようになりました。これにより、特に大規模なコードベースでは、スキャン時間が大幅に短縮されます。\n\nこの機能を有効にするには、CI/CD 変数`SAST_SCANNER_ALLOWED_CLI_OPTS`を `--multi-core N`に設定してください。`N`は使用したいコア数です。この変数は`gitlab-advanced-sast`ジョブにのみ設定し、他のジョブには設定しないでください。適切な値の選択方法については、[ドキュメント](https://docs.gitlab.com/user/application_security/sast/#security-scanner-configuration)で重要なガイダンスを確認してください。\n\nこのパフォーマンス向上をデフォルトで有効にする作業を進めています。これは[イシュー517409](https://gitlab.com/gitlab-org/gitlab/-/issues/517409) で追跡されています。\n\n[ドキュメント](https://docs.gitlab.com/user/application_security/sast/#security-scanner-configuration)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/514156)\n\n### プロジェクトの依存関係リストでコンポーネントによるフィルタリングが可能に\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\nプロジェクトの依存関係リストで、コンポーネントフィルターを使用してパッケージ名でフィルタリングできるようになりました。\n\nこれまで、プロジェクトレベルの依存関係リストでは、パッケージを検索することができませんでした。コンポーネントフィルターを設定すれば、指定した文字列を含むパッケージを見つけられるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/dependency_list/#filter-dependency-list)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/16490)\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/srm_dependency_list_project_filter_by_component.png\">\n\n### 脆弱性レポートで識別子によるフィルタリング\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\nプロジェクトの脆弱性レポートにおいて、脆弱性識別子を使用して結果をフィルタリングできるようになりました。これにより、プロジェクトやグループに潜む特定の脆弱性（CVEやCWEなど）を見つけられます。識別子は、別のフィルター（重大度、状態、ツールなど）と組み合わせて使用できます。脆弱性識別子フィルターは、脆弱性の数が20,000件を超えるレポートには適用できません。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/vulnerability_report/#filtering-vulnerabilities)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13340)\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/srm_filter_by_vulnerability_identifier.png\">\n\n### パイプライン実行ポリシーでマージリクエスト変数をサポート\n\nSaaS: Ultimate\u003Cbr> \nSelf-Managed: Ultimate\n\nパイプライン実行ポリシーで新しいマージリクエスト変数がサポートされるようになり、マージリクエスト関連の情報を考慮した、これまでよりも洗練されたポリシーを作成できるようになりました。CI/CDの適用をより的確かつ効率的に管理できるようになります。以下の変数がサポートされました。\n\n* `CI_MERGE_REQUEST_SOURCE_BRANCH_SHA`  \n* `CI_MERGE_REQUEST_TARGET_BRANCH_SHA`  \n* `CI_MERGE_REQUEST_DIFF_BASE_SHA`\n\nこの機能拡張により、次のことが可能になります。\n\n- ソースブランチとターゲットブランチ間の変更点を比較する高度なセキュリティスキャンを実装し、徹底したコードレビューと脆弱性検出を実現する。\n\n- 各マージリクエストの詳細に基づいて適応する動的な構成のパイプラインを作成し、開発プロセスを効率化する。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html)  \n[エピック](https://gitlab.com/gitlab-org/gitlab/-/issues/512916)\n\n### ローテーション対象のサービスアカウントにカスタムの有効期限を設定\n\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\nサービスアカウントのアクセストークンをローテーションする際に、expires\\_at属性を使用してカスタムの有効期限を設定できるようになりました。これまで、トークンは、ローテーションしてから7日後に自動的に失効していました。これにより、トークンの有効期限をよりきめ細かく管理できるようになり、安全にアクセス制御を継続して行う機能が強化されました。  \n\n[ドキュメント](https://docs.gitlab.com/ee/api/group_service_accounts.html#rotate-a-personal-access-token-for-a-service-account-user)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/505671)\n\n### カスタムロールの新しい権限\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\nカスタムロールの作成時に、[コンプライアンスダッシュボードの読み取り権限](https://gitlab.com/gitlab-org/gitlab/-/issues/465324)を指定できるようになりました。カスタムロールを使用すると、ユーザーに対して、タスクの完了に必要な特定の権限のみを付与できます。これにより、グループのニーズに合わせてロールを定義できるため、オーナーまたはメンテナーロールが必要なユーザー数を減らせます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/custom_roles.html)   \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14746)\n\n### `Self_rotate`スコープを使ってアクセストークンをローテーションする\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\n`self_rotate`スコープを使用して、アクセストークンをローテーションできるようになりました。このスコープは、パーソナルアクセストークン、プロジェクトアクセストークン、グループアクセストークンで使用できます。これまでは、新しいトークンの取得、そしてトークンのローテーションの実行というように、2つのリクエストを行う必要がありました。\n\nこの場を借りて、コントリビュートしてくれた[Stéphane Talbot](https://gitlab.com/stalb)さんと[Anthony Juckel](https://gitlab.com/ajuckel)さんに感謝します！  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#personal-access-token-scopes)  \n [イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/430748)\n\n### 複数のOIDCプロバイダーの使用時に追加のグループメンバーシップをサポート\n\nSaaS: -\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\n複数のOIDCプロバイダーを使用している場合に、追加のグループメンバーシップを設定できるようになりました。これまでは、複数のOIDCプロバイダーを設定している場合でも、単一のグループメンバーシップしか設定できませんでした。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/auth/oidc.html#configure-multiple-openid-connect-providers)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/408248)\n\n### アクセストークンのIPアドレスを表示\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nこれまでパーソナルアクセストークンの表示画面では、何分前にトークンが使用されたかという情報しか確認できませんでした。本リリースでは、トークンが使用された直近7件のIPアドレスも表示されるようになりました。このように情報がまとめて表示されることで、トークンがどこで使用されているかを追跡しやすくなります。\n\nこの場を借りて、コントリビュートしてくれた[Jayce Martin](https://jrm2k.us/)さん、[Avinash Koganti](http://www.linkedin.com/in/avinash-koganti-38b511162)さん、[Austin Dixon](https://austindixon.net/)さん、[Rohit Kala](https://www.linkedin.com/in/rohit-kala-1b891a179)さんに感謝します！  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#view-the-time-at-and-ips-where-a-token-was-last-used) \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/428577)\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/govern_accesstoken_ip.png\">\n\n### AIエージェントとユーザーの両方のアイデンティ情報に基づいたより安全なアクセス管理\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nこれまで、GitLabへのリクエストは単一のユーザーとしてのみ認証されていましたが、新しい「複合アイデンティティ」機能を使用することで、リクエストをサービスアカウントとユーザーの両方で同時に認証できるようになりました。AIエージェントのユースケースでは、システム内でタスクを実行したユーザーに基づいた権限が必要とされる一方で、そのユーザーとは異なる独自のアイデンティティを保持することが求められます。複合アイデンティティは、AIエージェントのアイデンティティを表す新しいアイデンティティプリンシパルであり、エージェントにアクションをリクエストした人間ユーザーのアイデンティティと関連付けられます。AIエージェントがリソースにアクセスしようとすると、複合アイデンティティトークンが使用されます。このトークンはサービスアカウントに紐づき、同時にエージェントを指示した人間ユーザーにもリンクされています。トークンに対する認可チェックは、リソースへのアクセスを許可する前に両方のアイデンティティを確認します。両方のアイデンティティがリソースにアクセスする権限を持っていない場合、アクセスは拒否されます。この新機能は、GitLab内でのリソース保護を強化するものです。サービスアカウントの複合アイデンティティの使用方法についての詳細は、[ドキュメント](https://docs.gitlab.com/development/ai_features/composite_identity/)をご確認ください。\n\n[ドキュメント](https://docs.gitlab.com/development/ai_features/composite_identity/)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/506641)\n\n### 作業アイテムタイプを変更\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\n作業アイテムタイプを簡単に変更できるようになりました。これにより、より効率的かつ柔軟にプロジェクトを管理できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/tasks.html#convert-a-task-into-another-item-type)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/385131)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/change_work_item_type_to_another.png\">\n\n### 送信したフォームに子アイテムを直接追加\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\n複数の子アイテムを作成する際に、フォームが送信後も開いたままになるよう改善しました。余分なクリックなしで複数のエントリを簡単に追加できるようになったため、時間の節約につながるほか、タスク管理のワークフローもよりスムーズになります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/epics/manage_epics.html#multi-level-child-epics)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/497767)\n\n### ワークスペース拡張機能でProposed APIをサポート\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\nワークスペース拡張機能でProposed APIの有効化がサポートされ、本番環境での互換性と信頼性が向上しました。このアップデートによって、Python Debuggerなどの重要な開発ツールを含め、Proposed APIを利用する拡張機能がエラーなしに動作するようになりました。安定性を維持しながらAPIアクセスの拡大を実現させた改善と言えます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/workspace/#extension-marketplace)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/514741)\n\n### 証明書ベースのKubernetesクラスターの特定および移行\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\n証明書ベースの[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)インテグレーションは、全ユーザーを対象に、2025年5月6日午前9時（UTC）から2025年5月8日午後10時（UTC）までの間にGitLab.comで無効化されます。さらに、GitLab 19.0でGitLab Self-Managedインスタンスから削除される予定です（2026年5月を予定）。\n\nユーザーの移行を支援するために、新たなクラスターAPIエンドポイントを追加しました。これにより、グループオーナーは、グループ、サブグループ、プロジェクトに登録されている[証明書ベースクラスター](https://docs.gitlab.com/ee/api/cluster_discovery.html)をクエリできるようになります。また、[移行に関するドキュメント](https://docs.gitlab.com/ee/user/infrastructure/clusters/migrate_to_gitlab_agent.html)を更新し、さまざまなユースケースに対応した移行手順を追加しました。\n\nGitLab.comのユーザーのみなさまは、影響の有無を確認した上で、早めに移行計画を立てることが推奨されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/cluster_discovery.html)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/512420)\n\n### FluxCD CI/CDコンポーネントを使用してOCIベースでGitOpsを実装\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\n[FluxCDコンポーネント](https://gitlab.com/components/fluxcd/)を使用することで、GitOpsのベストプラクティスを簡単に実現できます。FluxCDコンポーネントを使用して[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)マニフェストをOCIイメージとしてパッケージ化し、OCI互換のコンテナレジストリに保存できます。さらに、オプションとして、これらのイメージに署名し、FluxCDによる即時のリコンシリエーション（同期）をトリガーすることも可能です。\n\n[ドキュメント](https://gitlab.com/components/fluxcd/)\u003Cbr> \n[イシュー](https://gitlab.com/gitlab-org/ci-cd/deploy-stage/environments-group/experiments/fluxcd-ci-cd-component/-/issues/1)\n\n### Swiftパッケージのライセンススキャンをサポート\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\nGitLab 17.9では、Swiftパッケージのライセンススキャンのサポートが追加されました。これにより、プロジェクト内でSwiftを使用しているユーザーは、Swiftパッケージのライセンスをより詳しく把握できるようになります。\n\nこのデータは、依存関係リスト、SBOMレポート、およびGraphQL APIを介して、コンポジション解析ユーザーが利用できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/license_scanning_of_cyclonedx_files/index.html)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/506730)\n\n### 適用中のセキュリティポリシープロジェクトの削除をブロック\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\nセキュリティポリシーを安全に管理し、有効化・適用されているポリシーの中断を防ぐために、運用中のセキュリティポリシープロジェクトの削除を防ぐ保護機能を追加しました。\n\nグループまたはプロジェクトにリンクされているセキュリティポリシープロジェクトを削除する場合は、まずはリンクを削除する必要があります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/)  \n[エピック](https://gitlab.com/gitlab-org/gitlab/-/issues/482967)\n\n### パイプライン実行ポリシーでカスタムステージを適用\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\nパイプライン実行ポリシーの新機能として、CI/CDパイプラインにおいて`Inject`モードで**カスタムステージ**を適用できるようになりました。この機能を使用すると、セキュリティとコンプライアンス要件を遵守しながら、パイプライン構造をより柔軟に制御し、次のことを実現できます。\n\n- **パイプラインのカスタマイズの強化**：カスタムステージを定義してパイプラインの特定の箇所に挿入することで、ジョブの実行順序をよりきめ細かく制御できます。  \n- **セキュリティとコンプライアンスの向上**：パイプラインにおいて最適なタイミング（例：ビルド後かつデプロイ前）で、セキュリティスキャンとコンプライアンスチェックが実行されるように指定できます。  \n- **柔軟なポリシー管理**：ポリシーを一元管理しながら、開発チームが定義されたガードレール内でパイプラインを自由にカスタマイズできます。  \n- **シームレスな統合**：カスタムステージは、既存のプロジェクトステージやその他のポリシータイプと連携するため、CI/CDワークフローを中断することなく強化できます。\n\n**仕組み**\n\n新たに改良されたパイプライン実行ポリシー用の`inject_policy`を使用すると、ポリシー設定でカスタムステージを定義できます。定義されたカスタムステージは、有向非巡回グラフ（DAG）アルゴリズムを使用してプロジェクトの既存のステージ間の依存関係を効率的管理した上で自動的にマージされるため、適切な順序が設定され、競合が回避されます。\n\nたとえば、ビルドステージとデプロイステージの間にカスタムセキュリティスキャンステージを簡単に挿入できます。\n\n`inject_policy`ステージは、非推奨となる`inject_ci`に代わるものです。`inject_policy`モードを選択することで、より効果的にポリシーを管理、適用できるようになります。ポリシーエディターで`Inject`を使用してポリシーの設定を行った場合、デフォルトで`inject_policy`モードが設定されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html#inject_policy)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/475152)\u003Cbr>\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/custom-stages-yaml.png\">\n\n### マージリクエスト承認ポリシーでカスタムロールをサポート\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\nマージリクエスト承認ポリシーに、承認者としてカスタムロールを割り当てられるようになりました。\n\nこれにより、組織のチーム構成や職務に応じた承認要件を設定でき、適切な担当者がポリシーに基づいてレビュープロセスに関与するよう調整可能になります。たとえば、セキュリティレビューにはアプリケーションセキュリティ（AppSec）エンジニアリングロールによる承認が、ライセンス承認にはコンプライアンスロールによる承認が必要と設定できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/merge_request_approval_policies.html#require_approval-action-type)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13550)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/custom-roles.png\">\n\n### プロジェクトのコンプライアンスセンターを使用してコンプライアンスフレームワークを適用\n\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\nGitLab 17.2では、グループオーナーがグループのコンプライアンスセンターを使用して、グループ内のすべてのプロジェクトにコンプライアンスフレームワークを適用および削除する機能をリリースしました。\n\n本リリースではこの機能がさらに強化され、グループオーナーがプロジェクトレベルでもコンプライアンスフレームワークを適用および削除できるようになりました。これにより、グループオーナーによるプロジェクトレベルでのコンプライアンスフレームワークの適用およびモニタリングが容易になります。\n\nコンプライアンスフレームワークをプロジェクトレベルで適用および削除する機能は、グループオーナーのみが利用可能で、プロジェクトオーナーは利用できません。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/compliance_center/compliance_projects_report.html)  \u003Cbr>\n[エピック](https://gitlab.com/gitlab-org/gitlab/-/issues/507986)\n\n### サービスアカウントに関するメール通知\n\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\nサービスアカウントのメール通知の送信先として、カスタムメールアドレスを設定できるようになりました。サービスアカウントの作成時にカスタムメールアドレスを指定すると、そのメールアドレス宛にGitLabから通知が送信されます。サービスアカウントごとに一意のメールアドレスを用いる必要があります。これにより、プロセスやイベントをより効果的にモニタリングできます。\n\nこの場を借りて、コントリビュートしてくれた[SNCF Connect & Techチーム](https://www.sncf-connect-tech.fr/)の[Gilles Dehaudt](https://gitlab.com/tonton1728)さん、[Étienne Girondel](https://gitlab.com/lenaing)さん、[Kevin Caborderie](https://gitlab.com/Densett)さん、[Geoffrey McQuat](https://gitlab.com/gmcquat)さん、[Raphaël Bihore](https://gitlab.com/rbihore)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/service_accounts.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/428750)\n\n### OAuthアプリケーション認証の監査イベント\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\nこれまで、ユーザーがOAuthアプリケーションを認証しても、その行為を記録する監査イベントは生成されませんでした。しかし、特定のGitLabインスタンス上でユーザーが認証したOAuthアプリケーションに対し、セキュリティチームが監視、追跡を行うことは重要です。\n\n本リリースでは、「**ユーザーがOAuthアプリケーションを認証した**」ことを記録する監査イベントが追加され、GitLabインスタンスの監査機能がさらに強化されました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/audit_event_types.html#authorization)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/514152)\n\n### 認証情報インベントリでの検索およびフィルタリング\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\n認証情報インベントリで検索とフィルター機能を使用できるようになりました。これにより、ある期間内に有効期限が切れるトークンなど、ユーザー定義パラメーターに当てはまるトークンやキーを簡単に特定できます。これまで認証情報インベントリのエントリは静的リストとして表示されていました。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/credentials_inventory.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/345734)\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/filter_search_credentials.png\">\n\n### APIを使用して、個々のエンタープライズユーザーの2FAを無効にする\n\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: -\n\nAPIを使用して、個々のエンタープライズユーザーの2要素認証（2FA）登録を一括で消去できるようになりました。これまではUIでのみ行えましたが、APIを使用することで、自動化や一括操作が可能になり、2FAの大規模なリセットが必要な場合に時間を節約できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/group_enterprise_users.html#disable-two-factor-authentication-for-an-enterprise-user)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/383319)\n\n### 無効なプロジェクトアクセストークンとグループアクセストークンを表示\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\nUIで無効なグループアクセストークンとプロジェクトアクセストークンを表示できるようになりました。これまでGitLabでは、期限切れまたは失効済みとなったプロジェクトアクセストークンやグループアクセストークンはすぐに削除されていました。無効になったトークンの記録が存在しないため、監査やセキュリティレビューが困難になっていました。本リリースから、無効なグループアクセストークンとプロジェクトアクセストークンの記録が30日間保持されるようになりました。これにより、コンプライアンス対応やモニタリングを目的とした、トークンの使用状況と有効期限の追跡が容易になります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/settings/project_access_tokens.html#revoke-or-rotate-a-project-access-token)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/462217)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/govern_expired_tokens_list.png\">\n\n### グループ共有の可視性を強化\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nGitLab全体でグループ共有の可視性が向上しました。これまではグループの概要ページで共有プロジェクトを閲覧できたものの、そのグループがどのグループに招待されているかまでは確認できませんでした。本リリースでは、グループの概要ページに**共有プロジェクト**と**共有グループ**の両方のタブが表示され、組織全体でどのようにグループがつながり、共有されているかを完全に把握できるようになりました。これにより、組織全体におけるグループアクセスの監査および管理が容易になります。\n\nこの変更に関するフィードバックがございましたら、ぜひ[エピック16777](https://gitlab.com/groups/gitlab-org/-/epics/16777)にご投稿ください。  \n\n[ドキュメント](https://docs.gitlab.com/user/project/members/sharing_projects_groups/#view-shared-groups)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/378629)\n\u003Cimg src=\"https://about.gitlab.com/images/17_9/group_overview_shared_groups.png\">\n\n### ユーザーによるプロフィールの非公開化を制限\n\nSaaS: -\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\nユーザーは自分のプロフィールを公開するか非公開にするかを選択できます。本リリースより、管理者は、GitLabインスタンス全体でユーザーがプロフィールを非公開にできるかどうかを制御できるようになりました。管理者エリアにある「ユーザーがプロフィールを非公開にすることを許可」という設定で、このオプションを管理できます。デフォルトではこの設定は有効になっており、ユーザーはプロフィールを非公開にできます。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/settings/account_and_limit_settings.md#prevent-users-from-making-their-profiles-private) \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/421310)\n\n\u003Cbr>\n\u003Cbr>\n\n## 実験的な機能\n\n### ジョブトークンの詳細な権限設定\n\nジョブトークンは、パイプライン内でリソースにアクセスするための一時的な認証情報です。ジョブトークンはユーザーの権限を継承するため、通常は広範なアクセス権限を持っています。[ジョブトークンの詳細な権限設定](https://docs.gitlab.com/ee/ci/jobs/fine_grained_permissions.html)により、ジョブトークンがプロジェクト内のどのリソースにアクセスできるかを制御できます。\n\nこの機能に関するフィードバックをお待ちしています。ご質問やコメントがある場合、またはGitLabチームとのやり取りをご希望の場合は、[こちらのフィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/519575)をご覧ください。\n\n\u003Cbr>\n\u003Cbr>\n\n## バグ修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabでは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームをご利用のすべての人に、スムーズでシームレスな体験をお届けすることを約束します。\n\n以下のリンクをクリックして、17.9のバグ修正、パフォーマンスの強化、UIの改善についてすべてご覧ください。\n\n* [バグ修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.9)  \n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.9)  \n* [UIの改善](https://papercuts.gitlab.com/?milestone=17.9)\n\n\u003Cbr>\n\u003Cbr>\n\n## 非推奨事項\n\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n- [API Discoveryはデフォルトでブランチパイプラインを使用予定](https://docs.gitlab.com/ee/update/deprecations.html#api-discovery-will-use-branch-pipelines-by-default)  \n- [アプリケーションセキュリティテストアナライザーの大型バージョンアップ](https://docs.gitlab.com/ee/update/deprecations.html#application-security-testing-analyzers-major-version-update)  \n- [コンテナスキャンのデフォルトの重大度のしきい値を「中」に設定](https://docs.gitlab.com/ee/update/deprecations.html#container-scanning-default-severity-threshold-set-to-medium)  \n- [DASTの`dast_crawl_extract_element_timeout`および`dast_crawl_search_element_timeout`変数を非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#dast-dast_crawl_extract_element_timeout-and-dast_crawl_search_element_timeout-variables-are-deprecated) \n- [DASTの`dast_devtools_api_timeout`のデフォルト値を低めに変更予定](https://docs.gitlab.com/ee/update/deprecations.html#dast-dast_devtools_api_timeout-will-have-a-lower-default-value)  \n- [`defaultMaxHoursBeforeTermination`および`maxHoursBeforeTerminationLimit`フィールドを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#defaultmaxhoursbeforetermination-and-maxhoursbeforeterminationlimit-fields-are-deprecated)  \n\n- [依存プロキシへのトークンスコープの適用](https://docs.gitlab.com/ee/update/deprecations.html#dependency-proxy-token-scope-enforcement)  \n\n- [JavaScriptベンダーライブラリ向けの依存関係スキャン](https://docs.gitlab.com/ee/update/deprecations.html#dependency-scanning-for-javascript-vendored-libraries)  \n\n- [依存関係スキャンのGitLab SBOM脆弱性スキャナーへのアップグレード](https://docs.gitlab.com/ee/update/deprecations.html#dependency-scanning-upgrades-to-the-gitlab-sbom-vulnerability-scanner)  \n\n- [CI/CDテンプレートからサポート終了となるSASTジョブを削除予定](https://docs.gitlab.com/ee/update/deprecations.html#end-of-support-sast-jobs-will-be-removed-from-the-cicd-template) \n\n- [GitLabの高度なSASTをデフォルトで有効化予定](https://docs.gitlab.com/ee/update/deprecations.html#gitlab-advanced-sast-will-be-enabled-by-default)  \n\n- [kptベースの`agentk`を非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#kpt-based-agentk-is-deprecated)  \n\n- [従来のGeo関連のPrometheusリポジトリチェックメトリクス](https://docs.gitlab.com/ee/update/deprecations.html#legacy-geo-prometheus-repository-checks-metrics)  \n\n- [レガシーWeb IDEを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#legacy-web-ide-is-deprecated)  \n\n- [Prometheusサブチャートの大型アップデート](https://docs.gitlab.com/ee/update/deprecations.html#major-update-of-the-prometheus-subchart)  \n\n- [Linux OSパッケージの`gitlab-runner-helper-images`と`gitlab-runner`の依存関係をオプションに](https://docs.gitlab.com/ee/update/deprecations.html#make-the-gitlab-runner-helper-images-linux-os-package-an-optional-dependency-of-gitlab-runner)  \n\n- [GitLab.comでの脆弱性に関する新しいデータ保持制限](https://docs.gitlab.com/ee/update/deprecations.html#new-data-retention-limits-for-vulnerabilities-on-gitlabcom)\n\n- [グループ設定のプロジェクトページを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#project-page-in-group-settings-is-deprecated)  \n\n- [Raspberry Piの32ビットパッケージを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#raspberry-pi-32-bit-packages-are-deprecated)  \n\n- [REST APIエンドポイント`pre_receive_secret_detection_enabled`を非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#rest-api-endpoint-pre_receive_secret_detection_enabled-is-deprecated)  \n\n- [`allowed_pull_policies`にないコンテナイメージのプルポリシーを拒否](https://docs.gitlab.com/ee/update/deprecations.html#reject-container-image-pull-policies-not-in-allowed_pull_policies)  \n- [GraphQLタイプ`RemoteDevelopmentAgentConfig`を非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#remotedevelopmentagentconfig-graphql-type-is-deprecated)  \n\n- [GraphQLフィールド「duoProAssignedUsersCount」を削除](https://docs.gitlab.com/ee/update/deprecations.html#remove-duoproassigneduserscount-graphql-field)  \n\n- [Yarnプロジェクトの依存関係スキャンの脆弱性を修正](https://docs.gitlab.com/ee/update/deprecations.html#resolve-a-vulnerability-for-dependency-scanning-on-yarn-projects)  \n\n- [SASTジョブでグローバルキャッシュ設定を使用しないように変更](https://docs.gitlab.com/ee/update/deprecations.html#sast-jobs-no-longer-use-global-cache-settings)  \n- [シークレット検出アナライザーがデフォルトではルートユーザーで実行されないように](https://docs.gitlab.com/ee/update/deprecations.html#secret-detection-analyzer-doesnt-run-as-root-user-by-default)  \n\n- [公開APIのサブスクリプション関連のAPIエンドポイントを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#subscription-related-api-endpoints-in-the-public-api-are-deprecated)  \n\n- [SpotBugsスキャンの一部としてプロジェクトビルドをサポート](https://docs.gitlab.com/ee/update/deprecations.html#support-for-project-build-as-part-of-spotbugs-scans)  \n\n- [SUSE Linux Enterprise Server 15 SP2をサポート](https://docs.gitlab.com/ee/update/deprecations.html#support-for-suse-linux-enterprise-server-15-sp2)  \n\n- [`agentk`コンテナレジストリをクラウドネイティブGitLabに移行](https://docs.gitlab.com/ee/update/deprecations.html#the-agentk-container-registry-is-moving-to-cloud-native-gitlab)  \n- [CI/CDジョブトークンをJWT標準に更新](https://docs.gitlab.com/ee/update/deprecations.html#updating-cicd-job-tokens-to-jwt-standard)  \n\n- [GraphQLフィールド`maxHoursBeforeTermination`を非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#maxhoursbeforetermination-graphql-field-is-deprecated)\n\n\u003Cbr>\n\u003Cbr>\n\n## 削除された機能と破壊的な変更\n\n削除されたすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受けるには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n- [openSUSE Leap 15.5のサポート](https://docs.gitlab.com/ee/update/deprecations.html#support-for-opensuse-leap-155)\n\n### 変更履歴\n\n変更内容をすべて表示するには、以下のページから変更履歴をご確認ください。\n\n- [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)  \n- [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)  \n- [VS CodeのGitLabワークフロー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)  \n- [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n### インストール\n\nGitLabを新たにインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/ja-jp/install/)をご参照ください。\n\n### 更新\n\n[更新ページ](https://about.gitlab.com/ja-jp/update/)をご確認ください。\n\n\u003Cbr>\n\u003Cbr>\n\n*監修：小松原 つかさ  [@tkomatsubara](https://gitlab.com/tkomatsubara)\u003Cbr>\n（GitLab合同会社 ソリューションアーキテクト本部 シニアパートナーソリューションアーキテクト）*\n\n\u003Cbr>\n\u003Cbr>\n\n### 過去の日本語リリース情報\n### 過去の日本語リリース情報\n\n- [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n- [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n- [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n- [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)  \n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)  \n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)  \n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)  \n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)  \n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)\n",[672,671,14],"2025-02-21",{"slug":986,"featured":92,"template":679},"gitlab-17-9-release","content:ja-jp:blog:gitlab-17-9-release.yml","Gitlab 17 9 Release","ja-jp/blog/gitlab-17-9-release.yml","ja-jp/blog/gitlab-17-9-release",{"_path":992,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":993,"content":999,"config":1006,"_id":1008,"_type":16,"title":1009,"_source":18,"_file":1010,"_stem":1011,"_extension":21},"/ja-jp/blog/structuring-the-gitlab-package-registry-for-enterprise-scale",{"title":994,"description":995,"ogTitle":994,"ogDescription":995,"noIndex":6,"ogImage":996,"ogUrl":997,"ogSiteName":770,"ogType":771,"canonicalUrls":997,"schema":998},"エンタープライズ規模のGitLabパッケージレジストリの構築","GitLab独自のプロジェクトベースの公開モデルを活用し、ルートグループレベルを使用して、安全で柔軟なパッケージ管理戦略を立てる方法についてご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662332/Blog/Hero%20Images/blog-image-template-1800x945__23_.png","https://about.gitlab.com/blog/structuring-the-gitlab-package-registry-for-enterprise-scale","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"エンタープライズ規模のGitLabパッケージレジストリの構築\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Tim Rizzi\"}],\n        \"datePublished\": \"2025-02-19\",\n      }",{"title":994,"description":995,"authors":1000,"heroImage":996,"date":1002,"body":1003,"category":14,"tags":1004},[1001],"Tim Rizzi","2025-02-19","組織の規模が拡大するにつれ、社内パッケージの管理はますます複雑になります。JFrog ArtifactoryやSonatype\nNexusなどの従来のパッケージ管理システムでは一元化されたリポジトリアプローチが使用される一方で、GitLabでは現代の開発チームの作業により合致する、別の方法を採用しています。この記事では、Mavenパッケージとnpmパッケージを例に、エンタープライズ規模のGitLabパッケージレジストリを効果的に構築する方法について見ていきます。\n\n\n## GitLabパッケージレジストリモデルについて\n\n\n従来のパッケージ管理システムからGitLabのアプローチへ移行する際は、その違いに最初は戸惑うかもしれません。GitLabでは、単一の集中型リポジトリを使用する代わりに、パッケージ管理を既存のプロジェクト構造とグループ構造に直接統合します。これにより、次のような運用が可能になります。\n\n\n- チームは、コードが含まれる特定のプロジェクトにパッケージを公開\n\n- チームは、ルートグループレジストリ（その下にある全パッケージを網羅）からパッケージを使用\n\n- アクセス制御はGitLabの既存の権限設定から継承\n\n\nこのモデルには、次のようないくつかの利点があります。\n\n\n- パッケージとともにそのソースコードの所有権を明確化\n\n- 追加設定なしできめ細かいアクセス制御を実現\n\n- CI/CD統合を簡素化\n\n- チーム構造との自然な整合性を実現\n\n- ルートグループを使用することで、自社の全パッケージに単一のURLからアクセス可能\n\n\n### ルートグループパッケージレジストリを利用する利点\n\n\nGitLabではさまざまなグループレベルでパッケージを利用できますが、GitLabユーザーの間では、ルートグループレベルを使うことがベストプラクティスとして定着しつつあります。それには、以下のような理由があります。\n\n\n- **単一のアクセスポイント**：単一のURLから組織内の全プライベートパッケージにアクセス可能\n\n- **一貫性のあるパッケージ名**：グループレベルのエンドポイントにより、各チームは競合することなく、希望する命名規則を適用可能\n\n- **設定の簡素化**：すべてのデベロッパーが同じ設定を使用してパッケージにアクセス可能\n\n- **安全なアクセス管理**：デプロイトークンと組み合わせることで、容易にローテーションとアクセス制御を実現\n\n- **階層型の構造**：統一された方法でのアクセスを維持しながら、組織構造に自然にマッピング可能\n\n\n## 実世界での例：エンタープライズ向け構成\n\n\nでは、実際に大規模な企業ではどのように機能するか見ていきましょう。\n\n\n```\n\ncompany/ (root group)\n\n├── retail-division/\n\n│   ├── shared-libraries/     # 部門固有の共有コード\n\n│   └── teams/\n\n│       ├── checkout/        # チームはここにパッケージを公開\n\n│       └── inventory/       # チームはここにパッケージを公開\n\n├── banking-division/\n\n│   ├── shared-libraries/    # 部門固有の共有コード\n\n│   └── teams/\n\n│       ├── payments/       # チームはここにパッケージを公開\n\n│       └── fraud/         # チームはここにパッケージを公開\n\n└── shared-platform/        # 企業全体の共有コード\n    ├── java-commons/      # 共有Javaライブラリ\n    └── ui-components/     # 共有UIコンポーネント\n```\n\n\n### 公開設定\n\n\nチームは各自のプロジェクトレジストリにパッケージを公開します。これにより、所有権が明確化されます。\n\n\n1. Mavenの例\n\n\n```xml\n\n\u003C!-- checkout/pom.xml -->\n\n\u003CdistributionManagement>\n    \u003Crepository>\n        \u003Cid>gitlab-maven\u003C/id>\n        \u003Curl>${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/maven\u003C/url>\n    \u003C/repository>\n\u003C/distributionManagement>\n\n```\n\n\n2. npmの例\n\n\n```json\n\n// ui-components/package.json\n\n{\n  \"name\": \"@company/ui-components\",\n  \"publishConfig\": {\n    \"registry\": \"${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/npm/\"\n  }\n}\n\n```\n\n\n### 使用設定\n\n\nルートグループを使用する利点をここで発揮します。全チームは、パッケージへのアクセス用に単一のエンドポイントを設定します。\n\n\n1. Mavenの例\n\n\n```xml\n\n\u003C!-- 任意のプロジェクトのpom.xml -->\n\n\u003Crepositories>\n    \u003Crepository>\n        \u003Cid>gitlab-maven\u003C/id>\n        \u003Curl>https://gitlab.example.com/api/v4/groups/company/-/packages/maven\u003C/url>\n    \u003C/repository>\n\u003C/repositories>\n\n```\n\n\n2. npmの例\n\n\n```\n\n# 任意のプロジェクトのnpmrcファイル\n\n@company:registry=https://gitlab.example.com/api/v4/groups/company/-/packages/npm/\n\n```\n\n\nこの設定では、プロジェクトベースでの公開による利点を活用しつつ、社内全体にわたってすべてのパッケージへのアクセスを自動的に提供します。\n\n\n## 認証とアクセス制御\n\n\nGitLabが採用しているモデルでは、デプロイトークンとCI/CD統合により、認証が簡素化されます。\n\n\n### CI/CDパイプラインでの利用\n\n\nGitLabは、`CI_JOB_TOKEN`を使用してパイプラインでの認証を自動的に処理します。\n\n\n```yaml\n\n#-.gitlab. .gitlab-ci.yml\n\npublish:\n  script:\n    - mvn deploy  # またはnpm publish\n  # CI_JOB_TOKENによって自動的に認証が行われる\n```\n\n\n### 開発環境での利用\n\n\nグループデプロイトークンを用いて、パッケージを使用します。\n\n\n- ルートグループレベルで読み取り専用のデプロイトークンを作成\n\n- セキュリティのために定期的にトークンローテーションを行う\n\n- すべてのデベロッパー間で単一の設定を共有\n\n\n## ルートグループパッケージレジストリを使用する利点\n\n\n1. 設定の簡素化\n   - 単一のURLからすべてのパッケージにアクセス可能\n   - チーム間で一貫した設定\n   - トークンローテーションを簡単に実施可能\n2. 所有権の明確化\n   - パッケージをソースコードと一緒に保管\n   - 各チームが公開を制御\n   - バージョン履歴をプロジェクトアクティビティに関連付け\n3. 自然な構造\n   - 企業構造に合致\n   - チームの自律性をサポート\n   - チーム間のコラボレーションが可能\n\n## 始め方\n\n\n1. ルートグループの設定\n   - 明確なグループ構造を作成\n   - 適切なアクセス制御を設定\n   - グループデプロイトークンを作成\n2. チームプロジェクトの設定\n   - プロジェクトレベルでの公開設定を行う\n   - CI/CDパイプラインを実装\n   - パッケージの命名規則を文書化\n3. 使用の標準化\n   - ルートグループレジストリへのアクセスを設定\n   - デプロイトークンを安全に共有\n   - パッケージの検索プロセスを文書化\n\n## まとめ\n\n\nGitLabのパッケージレジストリモデルは、特にルートグループの使用を活用すれば、エンタープライズ向けのパッケージ管理用の強力なソリューションとなります。組織は、プロジェクトベースでの公開とルートグループでの利用を組み合わせることで、所有権の明確化とアクセスの簡素化の両方を実現できます。このアプローチなら、セキュリティと使いやすさを維持しながら、組織の規模に合わせて自然にスケールできます。\n\n\nまずは、1つのチームまたは部門にこのモデルを導入し、この統合アプローチの効果を実感しながら徐々に展開していくことをおすすめします。なお、この記事ではMavenとnpmに焦点を当ててご説明しましたが、GitLabでサポートされているすべてのタイプのパッケージにも、同じ原則を適用できます。\n\n\n> 今すぐパッケージレジストリを使い始めましょう！[GitLab\nUltimateの無料トライアル](https://about.gitlab.com/ja-jp/free-trial/)にぜひお申し込みください。\n",[752,802,1005],"solutions architecture",{"slug":1007,"featured":92,"template":679},"structuring-the-gitlab-package-registry-for-enterprise-scale","content:ja-jp:blog:structuring-the-gitlab-package-registry-for-enterprise-scale.yml","Structuring The Gitlab Package Registry For Enterprise Scale","ja-jp/blog/structuring-the-gitlab-package-registry-for-enterprise-scale.yml","ja-jp/blog/structuring-the-gitlab-package-registry-for-enterprise-scale",{"_path":1013,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1014,"content":1020,"config":1025,"_id":1027,"_type":16,"title":1028,"_source":18,"_file":1029,"_stem":1030,"_extension":21},"/ja-jp/blog/getting-started-with-gitlab-mastering-project-management",{"title":1015,"description":1016,"ogTitle":1015,"ogDescription":1016,"noIndex":6,"ogImage":1017,"ogUrl":1018,"ogSiteName":770,"ogType":771,"canonicalUrls":1018,"schema":1019},"GitLab入門：プロジェクト管理をマスターする","プロジェクト管理の主要な要素を学び、プロジェクトをより効率良く整理し、追跡する方法を習得しましょう。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097294/Blog/Hero%20Images/Blog/Hero%20Images/blog-getting-started-with-gitlab-banner-0497-option4-fy25_cFwd8DYFLekdnOLmbbChp_1750097293924.png","https://about.gitlab.com/blog/getting-started-with-gitlab-mastering-project-management","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab入門：プロジェクト管理をマスターする\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab\"}],\n        \"datePublished\": \"2025-02-11\",\n      }",{"title":1015,"description":1016,"authors":1021,"heroImage":1017,"date":1022,"body":1023,"category":14,"tags":1024},[860],"2025-02-11","*「GitLab入門」シリーズへようこそ！このシリーズでは、GitLab DevSecOpsプラットフォームを初めて使う方に向けて、基本的な使い方を解説します。*\n\nGitLabは、単なるコードの保存場所ではありません。AI搭載のDevSecOpsプラットフォームであり、プロジェクトを計画、整理、追跡し、成功へ導くためのツールが備わっています。この記事では、GitLabの主要なプロジェクト管理機能と、それらを効果的に活用する方法を解説します。\n\n## なぜGitLabがプロジェクト管理に適しているのか？\n\nもし、コードリポジトリ、イシュートラッカー、コミュニケーションプラットフォームがすべて1か所でシームレスに統合されていたらどうでしょうか。それがGitLabの強みです。すべてを一元化することで、ワークフローを効率化し、コラボレーションを強化し、プロジェクトを円滑に進められます。もう、複数のツールを行き来して情報を見失う心配はありません。GitLabなら、プロジェクトの開始から完了までをスムーズに管理できる環境が整っています。\n\n## GitLabを使ったプロジェクト管理における主要な要素\n\n主要な要素を分かりやすく説明します：\n\n* [エピック](https://docs.gitlab.com/ee/user/group/epics/)：エピックは、プロジェクト全体の大枠を示すものです。プロジェクトにおける重要な機能、大きな目標、長期的な取り組みなどを表します。たとえば、「ウェブサイトのリニューアルを行う」なども、エピックに該当します。エピックを活用することで、作業を大きなまとまりで整理し、管理しやすくできます。\n* [イシュー](https://docs.gitlab.com/ee/user/project/issues/)：イシューは、プロジェクトの目標を達成するための個々のタスクや作業項目です。たとえば、「ホームページのデザインを作成する」「会社概要ページの文章を書く」など、具体的なアクションを表します。イシューはプロジェクトの構成要素であり、個々の作業の進捗を明確に把握するのに役立ちます。\n* [ラベル](https://docs.gitlab.com/ee/user/project/labels.html)：ラベルはタグのようなもので、作業を分類し、フィルタリングするのに役立ちます。ラベルを使用すると、優先度（例：高、中、低）、ステータス（例：未対応、進行中、完了）を示したり、特定のチームや個人にイシューを割り当てたりできます。ラベルを活用することで、作業の整理や優先順位付けを柔軟に行えます。\n* ボード：GitLabのイシューボードは、視覚的なワークスペースです。プロジェクトをKanban形式で表示し、すべてのイシューの状態を一目で確認できます。イシューを複数のリスト間（例：「未対応」「進行中」「完了」）でドラッグ＆ドロップすることで、ワークフローを可視化し、進捗を追跡できます。GitLabでは、[イシュー](https://docs.gitlab.com/ee/user/project/issue_board.html)や[エピック](https://docs.gitlab.com/ee/user/group/epics/epic_boards.html)用のボードを作成できます。\n* [マイルストーン](https://docs.gitlab.com/ee/user/project/milestones/)：マイルストーンは、プロジェクト内の重要なチェックポイントや期限を示します。特定のゴールや締め切りに向けた進捗を追跡するのに役立ちます。例えば、重要な機能の開発完了、ベータ版のリリース、最終製品の公開などのマイルストーンを設定できます。 \n* [タスク](https://docs.gitlab.com/ee/user/tasks.html)：より細かい作業単位として、イシューを小さなタスクに分割できます。これにより、担当者を明確にし、タスクの見落としを防ぐことができます。タスクを使うことでイシュー内にチェックリストを作成でき、複雑な作業の進捗を簡単に追跡できます。\n\n## 各機能の詳細\n\n### 1. エピック：全体像\n\n* エピックの作成：グループの「プラン」メニュー内にある「エピック」に移動します。**新しいエピック**をクリックし、わかりやすいタイトルと、目標を具体的に示す説明を入力します。さらに、エピックの開始日と終了日を指定することもできます。これは、[ロードマップ](https://docs.gitlab.com/ee/user/group/roadmap/)を使用する際に便利です。\n\n![エピック作成ページ](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097301/Blog/Content%20Images/Blog/Content%20Images/image1_aHR0cHM6_1750097300817.png)\n\n* [ロードマップ](https://docs.gitlab.com/ee/user/group/roadmap/)：エピックをロードマップに追加すると、プロジェクトのタイムラインや長期的な目標を視覚化できます。ロードマップではプロジェクト計画の全体像を俯瞰できるため、大局を把握しながら、主要なマイルストーンに向けた進捗を簡単に追跡できます。\n\n![ロードマップ表示](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097301/Blog/Content%20Images/Blog/Content%20Images/image8_aHR0cHM6_1750097300818.png)\n\n### 2. イシュー：作業を進める\n\n* イシューの作成：プロジェクトの「プラン」メニュー内にある「イシュー」に移動し、**新しいイシュー**をクリックします。「ホームページのワイヤーフレームをデザインする」のような、簡潔でわかりやすいタイトルを入力し、担当者を割り当て、期限を設定し、タスクの要件を明確に記載した詳細な説明を追加します。\n* GitLab Duo：簡単な要望を伝えるだけで、[GitLab Duoで詳細なイシューの説明を作成](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#populate-an-issue-with-issue-description-generation)できます。\n* ウェイト付け：イシューにウェイトを設定することで、必要な労力を見積もることができます。これは計画や優先順位付けに役立ちます。例えば、簡単なタスクには**1**のウェイトを設定し、より複雑なタスクには**5**のウェイトを設定できます。\n\n![ウェイトが4に設定されているイシュー](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097301/Blog/Content%20Images/Blog/Content%20Images/image4_aHR0cHM6_1750097300819.png)\n\n### 3. ラベル：作業を整理する\n\n* ラベルの作成：プロジェクトの「イシュー」タブに移動し、「ラベル」をクリックします。そして、イシューを分類する、明確な名前のカスタムラベルを作成します。例えば、**優先度：高**、**ステータス：進行中**、**チーム：デザイン**などのラベルを作成できます。これらのラベルをイシューに適用することで、整理やフィルターがしやすくなります。\n\n![ラベルの画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097301/Blog/Content%20Images/Blog/Content%20Images/image6_aHR0cHM6_1750097300820.png)\n\n### 4. ボード：ワークフローを可視化する\n\n* Kanbanボード：GitLabのボードでは、プロジェクトをKanban形式で表示できます。「未対応」「進行中」「完了」などのリストを作成してワークフローの各ステージを示し、そのリスト間でイシューをドラッグアンドドロップすることで、進捗を可視化できます。\n* ボードのカスタマイズ：ボードはワークフローに合わせて自由に調整できます。列を追加したり、ラベルや担当者でイシューをフィルタリングしたり、エピックやその他の基準でイシューを分類するスイムレーンを設定したりできます。\n\n![イシューボードでワークフローを可視化する](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097301/Blog/Content%20Images/Blog/Content%20Images/image2_aHR0cHM6_1750097300820.png)\n\n### 5. タスク：作業を細分化する\n\n* タスクの作成：イシュー内でチェックリストMarkdown構文を使用することで、タスクリストを作成できます。リストの各項目は、イシューの中の小さなステップを表します。例えば、「ホームページのワイヤーフレームをデザインする」というイシューの中に、「初期コンセプトをスケッチする」、「デジタルワイヤーフレームを作成する」、「関係者からフィードバックをもらう」などのタスクを作成できます。タスクを作成するには、イシューのページの「子アイテム」セクションにある**追加**ボタンをクリックします。次に、タスクのタイトルを入力し、**タスクを作成**をクリックします。\n\n![「タスクを作成」ボタンのあるイシュー](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097301/Blog/Content%20Images/Blog/Content%20Images/image7_aHR0cHM6_1750097300822.png)\n\n### 6. マイルストーン：進捗を追跡する\n* マイルストーンの設定：マイルストーンを使うことで、特定の機能の完成や重要な締め切りなど、プロジェクトの重要なポイントを示せます。マイルストーンには、明確なタイトルと期限を設定しましょう。\n* イシューとの関連付け：マイルストーンにイシューやエピックを関連付けることで、目標に向けた進捗を追跡できます。これにより、個々のタスクがプロジェクト計画全体にどのように貢献しているかを確認できます。\nマイルストーンの作成：「プラン」ドロップダウンメニューから**マイルストーン > 新しいマイルストーン**をクリックします。マイルストーンのタイトル、説明、開始日、および期限を指定します。\n\n![「新しいマイルストーン」画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097301/Blog/Content%20Images/Blog/Content%20Images/image5_aHR0cHM6_1750097300823.png)\n\n\u003Cbr>\u003C/br>\n\n![マイルストーンのある新しいページ](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097301/Blog/Content%20Images/Blog/Content%20Images/image3_aHR0cHM6_1750097300823.png)\n\n### 7. [イテレーション](https://docs.gitlab.com/ee/user/group/iterations/)：スプリントで作業を進める\n\n* イテレーションの定義：アジャイルワークフローを使用している場合は、特定の開始日と終了日を設定したイテレーション（スプリント）を定義します。これにより、作業をより小さく管理しやすい時間枠に分割できます。\n* イシューの割り当て：イシューをイテレーションに割り当てることで、作業をより短いサイクルで計画し、段階的な価値を生み出すことに集中できます。\n\n### 8. [タイムトラッキング](https://docs.gitlab.com/ee/user/project/time_tracking.html)：作業時間を測定する\n\n* 時間の記録：イシュー内で、「/spend」のクイックアクションを使用し、続けて作業時間を入力することで（例：「/spend 2h 30m」）、作業時間を記録できます。これにより、各タスクに費やした実際の時間を追跡できます。\n* データの分析：タイムトラッキングレポートを生成して、プロジェクトの進捗、チームの効率性、および潜在的なボトルネックなどに関するインサイトを得られます。\n\n![タイムトラッキングレポート](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097301/Blog/Content%20Images/Blog/Content%20Images/image9_aHR0cHM6_1750097300824.png)\n\n### 9. 依存関係：ワークフローを管理する\n\n* [イシューのリンク](https://docs.gitlab.com/ee/user/project/issues/related_issues.html)：イシュー間に依存関係を設定することで、タスクが適切な順序で完了するように管理できます。例えば、「イシューAを完了しないと、イシューBを開始できない」ような場合、それらのイシューの間に依存関係を作成できます。これにより、ワークフローを可視化し、潜在的な障害を回避できます。\n\n### 10. テンプレート：イシューの作成を効率化する\n\n* [テンプレートの作成](https://docs.gitlab.com/ee/user/project/description_templates.html)：イシューテンプレートを作成することで、よくあるタスクに必要な情報を標準化し、時間を節約するとともに一貫性を保つことができます。例えば、バグ報告用のテンプレートを作成し、「再現手順」「期待される動作」「実際の動作」などの項目を作成できます。\n\n### コラボレーションは成功の鍵\n\nGitLabは、以下の機能を通じてチームのコラボレーションを促進します：\n\n* [コメント](https://docs.gitlab.com/ee/user/discussions/)：イシューやエピックについて、GitLab内で直接議論できます。進捗の共有や質問、フィードバックの提供にコメントを活用しましょう。\n* [メンション](https://docs.gitlab.com/ee/user/discussions/#mentions)：**@**を使って特定のメンバーをメンションすることで、更新を通知したり、意見を求めたりできます。\n* ディスカッション：イシューやエピック内でスレッド形式のディスカッションを行い、アイデアを出し合ったり、協力して問題を解決したり、チーム全員と情報共有したりできます。\n\n### 始めてみましょう\n\nGitLabのプロジェクト管理機能の強みを理解したところで、今度は実際に使ってみましょう！サンプルプロジェクトを作成し、さまざまな機能を試しながら、GitLabを使ったワークフロー改革をぜひ体験してください。また、GitLabドキュメントでは、GitLabを使った[Kanban](https://docs.gitlab.com/ee/tutorials/kanban/)や[スクラム](https://docs.gitlab.com/ee/tutorials/scrum_events/)の運用について詳しく説明しています。\n\n>  #### GitLabアカウントをお持ちでない場合は、[GitLab DuoとGitLab Ultimateの無料トライアル](https://about.gitlab.com/ja-jp/free-trial/)をお試しください！\n\n## 関連リンク\n- [GitLab入門：ユーザーの管理方法](https://about.gitlab.com/blog/getting-started-with-gitlab-how-to-manage-users/)\n- [GitLab入門：プロジェクトをGitLabにインポートする方法](https://about.gitlab.com/blog/getting-started-with-gitlab-how-to-import-your-projects-to-gitlab/)\n",[802,14,781,944],{"slug":1026,"featured":6,"template":679},"getting-started-with-gitlab-mastering-project-management","content:ja-jp:blog:getting-started-with-gitlab-mastering-project-management.yml","Getting Started With Gitlab Mastering Project Management","ja-jp/blog/getting-started-with-gitlab-mastering-project-management.yml","ja-jp/blog/getting-started-with-gitlab-mastering-project-management",{"_path":1032,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1033,"content":1039,"config":1047,"_id":1049,"_type":16,"title":1050,"_source":18,"_file":1051,"_stem":1052,"_extension":21},"/ja-jp/blog/from-code-to-production-a-guide-to-continuous-deployment-with-gitlab",{"ogTitle":1034,"schema":1035,"ogImage":1036,"ogDescription":1037,"ogSiteName":770,"noIndex":6,"ogType":771,"ogUrl":1038,"title":1034,"canonicalUrls":1038,"description":1037},"コードから本番環境へ：GitLabを活用した継続的デプロイのガイド","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"コードから本番環境へ：GitLabを活用した継続的デプロイのガイド\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Benjamin Skierlak\"},{\"@type\":\"Person\",\"name\":\"James Wormwell\"}],\n        \"datePublished\": \"2025-01-28\",\n      }","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659478/Blog/Hero%20Images/REFERENCE_-_Use_this_page_as_a_reference_for_thumbnail_sizes.png","GitLabを活用して堅牢な継続的デプロイパイプラインを構築する方法をご紹介します。具体的な手順や例、ベストプラクティスを通して段階的にプロセスを理解できます。","https://about.gitlab.com/blog/from-code-to-production-a-guide-to-continuous-deployment-with-gitlab",{"heroImage":1036,"body":1040,"authors":1041,"updatedDate":1044,"date":1045,"title":1034,"tags":1046,"description":1037,"category":14},"継続的デプロイは、チームがより迅速かつ高い信頼性で価値を生み出せる画期的な手法です。しかし、GitOpsやKubernetesを用いたコンテナオーケストレーション、動的環境などの高度なデプロイワークフローに取り組むのは、継続的デプロイの導入を始めたばかりのチームにとってはハードルが高いと感じられるかもしれません。\n\n\nGitLabでは、シームレスかつスケーラブルなデリバリーを実現することに注力しています。チームが基本に集中できるようにすることで、時間をかけてより複雑な戦略へと発展できる、強固な基盤を構築できます。このガイドでは、GitLabを活用した継続的デプロイの導入に必要な基本的なステップを紹介し、長期的な成功のための土台作りをサポートします。\n\n\n## まずはワークフローの計画から\n\n\n技術的な実装に入る前に、デプロイワークフローをしっかりと設計する時間を取りましょう。成功の鍵は、慎重な計画と体系的なアプローチにあります。\n\n\n### アーティファクト管理戦略\n\n\n継続的デプロイにおいて、アーティファクトとは、ビルドプロセスによって生成されるパッケージ化された成果物を指し、保存、バージョン管理、デプロイが必要です。アーティファクトには、次のようなものが含まれます。\n\n\n* アプリケーション用のコンテナイメージ\n\n* パッケージ\n\n* コンパイル済みのバイナリや実行ファイル\n\n* ライブラリ\n\n* 設定ファイル\n\n* ドキュメントパッケージ\n\n* その他のアーティファクト\n\n\n各アーティファクトは、デプロイプロセスにおいて特定の役割を果たします。たとえば、一般的なWebアプリケーションでは、次のようなアーティファクトが生成されることがあります。\n\n\n* バックエンドサービス用のコンテナイメージ\n\n* コンパイル済みフロントエンドアセットのZIPアーカイブ\n\n* データベース変更用のSQLファイル\n\n* 環境ごとの設定ファイル\n\n\nアーティファクトの適切な管理はデプロイを成功させる鍵となります。ここからは、アーティファクト管理のアプローチについて詳しく見ていきましょう。\n\n\n#### アーティファクトとリリースのバージョニング戦略\n\n\nクリーンで整理された構造を保つためのベストプラクティスとして、アーティファクトの明確なバージョニング戦略を確立することが重要です。リリース作成時のポイントは以下のとおりです。\n\n\n* リリースタグにセマンティックバージョニング（major.minor.patch）を使用する\n\n  * 例：安定版リリースが`myapp:1.2.3`の場合\n  * 破壊的な変更がある場合は、メジャーバージョン変更（2.0.0）\n  * 新機能を追加する場合は、マイナーバージョン変更（1.3.0）\n  * バグ修正を行う場合は、パッチバージョン変更（1.2.4）\n* 最新の安定版を示す「latest」タグを維持する\n\n  * 例：`myapp:latest`（自動デプロイ用）\n* コミットSHAを含めることで、正確なバージョン追跡を行う\n\n  * 例：`myapp:1.2.3-abc123f`（デバッグ用）\n* 開発環境向けにブランチベースのタグを使用する\n\n  * 例：`myapp:feature-user-auth`（新機能テスト用）\n\n#### ビルドアーティファクトの保持\n\n\n明確な保持ルールを実装しましょう。\n\n\n* 一時的なアーティファクトの明確な有効期限を設定する\n\n* 永続的に保持する必要があるアーティファクトを定義する\n\n* ストレージ管理のためのクリーンアップポリシーを設定する\n\n\n#### レジストリアクセスと認証\n\n\n適切なアクセス制御でアーティファクトのセキュリティを確保しましょう。\n\n\n* デベロッパーのアクセス用にパーソナルアクセストークンを実装する\n\n* パイプラインの認証にCI/CD変数を設定する\n\n* 適切なアクセススコープを設定する\n\n\n### 環境戦略\n\n\n環境設計はデプロイパイプライン全体の構成に影響を与えるため、早い段階で検討しましょう。\n\n\n* 開発、ステージング環境、本番環境の設定\n\n* 環境ごとの変数とシークレットの管理\n\n* アクセス制御と保護ルールの設定\n\n* デプロイの追跡とモニタリングのアプローチ\n\n\n### デプロイターゲット\n\n\nどこに、どのようにデプロイするのかを慎重に検討しましょう。これらの決定は重要であり、それぞれのメリットとデメリットを考慮する必要があります。\n\n\n* インフラ要件（仮想マシン、コンテナ、クラウドサービス）\n\n* ネットワークアクセスとセキュリティ設定\n\n* 認証メカニズム（SSH鍵、アクセストークン）\n\n* リソースの割り当てとスケーリングの考慮\n\n\nこれで戦略が定まり、基盤となる決定が完了したので、これらの計画を実際に動作するパイプラインに落とし込んでいきます。それでは、実際に機能する例を作ることで概念を深掘りしていきましょう。まずはシンプルなアプリケーションから始め、徐々にデプロイの機能を追加していきます。\n\n\n## CDパイプラインの実装\n\n\n### 具体的な手順\n\n\nWebアプリケーション向けの基本的な継続的デプロイ（CD）パイプラインの実装手順を順を追って説明します。例としてシンプルなHTMLアプリケーションを使用しますが、ここで紹介する原則はどのタイプのアプリケーションにも応用できます。今回は、アプリケーションをDockerイメージとしてパッケージ化し、シンプルな仮想マシン上にデプロイします。これにより、最小限の依存関係を持つ厳選されたイメージを活用し、環境依存の要件が意図せず混入するのを防ぐことができます。また、仮想マシン上で動作させることで、GitLabのネイティブなインテグレーション機能を活用しない設定となります。複雑で本格的な環境ではなく、理解しやすい簡易的な環境から始めてみましょう。\n\n\n#### 前提条件\n\n\nこの例では、クラウドプロバイダーの仮想マシン上で実行するアプリケーションをコンテナ化することを目指します。また、ローカル環境でもこのアプリケーションをテストします。以下の前提条件は、このシナリオにおいてのみ必要なものです。\n\n\n##### [仮想マシン（VM）](https://about.gitlab.com/ja-jp/blog/what-is-vm/)のセットアップ\n\n\n* お好みのクラウドプロバイダーで[VM](https://about.gitlab.com/ja-jp/blog/what-is-vm/)をプロビジョニングします（例：GCP、AWS、Azure）\n\n* ネットワークルールを設定し、ポート22、80、443へのアクセスを許可します\n\n* デプロイ用にマシンのパブリックIPアドレスを記録します\n\n\n##### SSH認証のセットアップ：\n\n\n* マシン用の公開鍵と秘密鍵のペアを生成します\n\n* GitLabで**設定 > CI/CD > 変数**を開きます\n\n* `GITLAB_KEY`という変数を作成します\n\n* タイプを「ファイル」に設定します（SSH認証に必須）\n\n* 秘密鍵を「値」フィールドに貼り付けます\n\n* 「ユーザー」変数を定義します（VMにログインしてスクリプトを実行するユーザー）\n\n\n##### デプロイ変数の設定\n\n\n* デプロイターゲット用の変数を作成します\n\n  * `STAGING_TARGET`：ステージング環境のサーバーIPまたはドメイン\n  * `PRODUCTION_TARGET`：本番環境のサーバーIPまたはドメイン\n\n##### ローカル開発環境のセットアップ\n\n\n* デプロイのテスト用に、ローカルマシンにDockerをインストールします\n\n\n##### GitLabコンテナレジストリへのアクセス\n\n\n* レジストリパスを確認します：\n\n  * **デプロイ > コンテナレジストリ**を開きます\n  * レジストリパスをコピーします（例：registry.gitlab.com/group/project）\n* 認証の設定：\n\n  * **設定 > アクセストークン**を開きます\n  * レジストリアクセス権を持つ新しいトークンを作成します\n  * トークンの有効期限を最大1年に設定します\n  * トークンを安全に保存します\n* ローカルレジストリのアクセス設定：\n\n\n```\n\ndocker login registry.gitlab.com\n\n\n# パーソナルアクセストークンを使用する場合のユーザー名はgitlab-ci-tokenです\n\n\n# Password:（ここにアクセストークンを入力）\n\n```\n\n\n#### 1. アプリケーションを作成する\n\n\n基本的なWebアプリケーションから始めましょう。今回の例では、シンプルなHTMLページを使用します。\n\n\n```\n\n\u003C!|||UNTRANSLATED_CONTENT_START|||-- index.html -->\n\n\n\u003Chtml>\n  \u003Chead>\n    \u003Cstyle>\n      body {\n        background-color: #171321; /* GitLab dark */\n      }\n    \u003C/style>\n  \u003C/head>\n  \u003Cbody>\n    \u003C!|||UNTRANSLATED_CONTENT_END|||-- ここにコンテンツを追加 -->\n  \u003C/body>\n\u003C/html>\n\n```\n\n\n#### 2. アプリケーションをコンテナ化する\n\n\nアプリケーションをパッケージ化するために、Dockerfileを作成します：\n\n\n```\n\nFROM nginx:1.26.2\n\n\nCOPY index.html /usr/share/nginx/html/index.html\n\n```\n\n\nこのDockerfileは\n\n\n* nginxをベースイメージとして使用し、Webコンテンツを配信できるようにします\n\n* 作成したindex.htmlをnginxのディレクトリ構造内の適切な場所にコピーします\n\n\n#### 3. CI/CDパイプラインを設定する\n\n\nGitLabのパイプラインステージを定義するために、`.gitlab-ci.yml`ファイル を作成します：\n\n\n```\n\nvariables:\n  TAG_LATEST: $CI_REGISTRY_IMAGE/$CI_COMMIT_REF_NAME:latest\n  TAG_COMMIT: $CI_REGISTRY_IMAGE/$CI_COMMIT_REF_NAME:$CI_COMMIT_SHA\n\nstages:\n  - publish\n  - deploy\n```\n\n\n解説：\n\n\n`TAG_LATEST`は、次の3つの要素で構成されています：\n\n\n* `$CI_REGISTRY_IMAGE`：GitLabのプロジェクトのコンテナレジストリのパス\n\n\n例：`registry.gitlab.com/your-group/your-project`\n\n\n* `$CI_COMMIT_REF_NAME`：ブランチ名またはタグ名\n\n\n例：ブランチの場合は`/main`、フィーチャーブランチの場合は`/feature-login`\n\n\n* `:latest`：固定のサフィックス\n\n\nこれにより、mainブランチの`TAG_LATEST`は次のようになります：`registry.gitlab.com/your-group/your-project/main:latest`\n\n\n`TAG_COMMIT`は`TAG_LATEST`とほぼ同じですが、`:latest`の代わりにコミット識別子の`$CI_COMMIT_SHA`を使います。例：`:abc123def456`\n\n\nしたがって、同じmainブランチでの`TAG_COMMIT`は次のようになります：`registry.gitlab.com/your-group/your-project/main:abc123def456`\n\n\n両方のタグを使用する理由は、`TAG_LATEST`が常に最新バージョンを取得しやすくするのに対し、`TAG_COMMIT`は必要に応じて特定のバージョンに戻れるようにするためです。\n\n\n#### 4. コンテナレジストリに公開する\n\n\nパイプラインに公開ジョブを追加します：\n\n\n```\n\npublish:\n  stage: publish\n  image: docker:latest\n  services:\n    - docker:dind\n  script:\n    - docker build -t $TAG_LATEST -t $TAG_COMMIT .\n    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY\n    - docker push $TAG_LATEST\n    - docker push $TAG_COMMIT\n```\n\n\nこのジョブは\n\n\n* Docker-in-Dockerを使用してイメージをビルドします\n\n* 2つのタグを付けたイメージを作成します\n\n* GitLabレジストリへの認証を行います\n\n* 両方のイメージをレジストリにプッシュします \n\n\nこれで、コンテナイメージが安全にレジストリに保存されました。次は、ターゲット環境へのデプロイを進めていきます。本番環境へ移行する前に、まずローカル環境でテストを行い、設定が正しく機能していることを確認しましょう。 \n\n\n#### 5. 環境へデプロイする\n\n\n本番環境にデプロイする前に、ローカル環境でテストできます。先ほどGitLabレジストリにイメージを公開したので、それをローカル環境でプルしてテストします。コンテナイメージのパスが分からない場合は、GitLabの\\*\\*デプロイ\n\n\n> コンテナレジストリ\\*\\*に移動し、該当のコンテナイメージの行末にあるアイコンをクリックすると、パスをコピーできます。\n\n\n```\n\ndocker login registry.gitlab.com \n\n\ndocker run -p 80:80 registry.gitlab.com/your-project-path/main:latest\n\n```\n\n\nこれにより、Webブラウザからlocalhostにアクセスし、ローカル環境でアプリケーションを確認できるようになります。\n\n\nそれでは、パイプラインにデプロイジョブを追加しましょう：\n\n\n```\n\ndeploy:\n  stage: deploy\n  image: alpine:latest\n  script:\n    - chmod 400 $GITLAB_KEY\n    - apk add openssh-client\n    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY\n    - ssh -i $GITLAB_KEY -o StrictHostKeyChecking=no $USER@$TARGET_SERVER \n      docker pull $TAG_COMMIT &&\n      docker rm -f myapp || true &&\n      docker run -d -p 80:80 --name myapp $TAG_COMMIT\n```\n\n\nこのジョブは\n\n\n* デプロイ先のサーバーへのSSHアクセスを確立します\n\n* 最新のコンテナイメージをプルします\n\n* 既存のコンテナを削除します\n\n* 新しいバージョンのコンテナをデプロイします\n\n\n#### 6. デプロイを追跡する\n\n\n環境設定を追加してデプロイの追跡を有効にします：\n\n\n```\n\ndeploy:\n  environment:\n    name: production\n    url: https://your-application-url.com \n```\n\n\nこれにより、GitLabの**オペレーション > 環境**セクションに環境オブジェクトが作成され、以下の情報が提供されます：\n\n\n* デプロイ履歴\n\n* 現在のデプロイ状況\n\n* アプリケーションへのクイックアクセス\n\n\n単一の環境向けのパイプラインは、最初のステップとしては有効ですが、ほとんどのチームでは適切なテストやステージングを行うために複数の環境を管理する必要があります。このより実践的なシナリオに対応するために、パイプラインを拡張していきましょう。\n\n\n#### 7. 複数環境をセットアップする\n\n\nより堅牢なパイプラインを構築するために、ステージング環境と本番環境のデプロイを設定します：\n\n\n```\n\nstages:\n  - publish\n  - staging\n  - release\n  - version\n  - production\n\nstaging:\n  stage: staging\n  rules:\n    - if: $CI_COMMIT_BRANCH == \"main\" && $CI_COMMIT_TAG == null\n  environment:\n    name: staging\n    url: https://staging.your-app.com\n  # デプロイスクリプトを記述\n\nproduction:\n  stage: production\n  rules:\n    - if: $CI_COMMIT_TAG\n  environment:\n    name: production\n    url: https://your-app.com\n  # デプロイスクリプトを記述\n```\n\n\nこの設定は\n\n\n* mainブランチからステージ環境へデプロイします\n\n* GitLabのタグを利用して本番環境へのデプロイをトリガーします\n\n* 環境ごとに分けてデプロイの状況を管理できるようにします\n\n\nこのステップと次のステップでは、GitLabの非常に便利な機能であるタグを活用しています。GitLabの**コード >\n\nタグ**セクションで手動でタグを作成すると、'$ CI_COMMMIT_TAG\n\n`変数が設定され、本番環境へのデプロイジョブが適切にトリガーされるようになります。\n\n\n#### 8. 自動リリースノートを作成する\n\n\nCI/CDパイプラインを通じてGitLabのリリース機能を使用します。まず、`.gitlab-ci.yml`のstagesを更新 します：\n\n\n```\n\nstages:\n\n\n\n- publish\n\n\n- staging\n\n\n- release # New stage for releases\n\n\n- version\n\n\n- production\n\n```\n\n\n次に、リリースジョブを追加します：\n\n\n```\n\nrelease_job:\n  stage: release\n  image: registry.gitlab.com/gitlab-org/release-cli:latest\n  rules:\n    - if: $CI_COMMIT_TAG                  # タグが作成された場合のみ実行する\n  script:\n    - echo \"Creating release for $CI_COMMIT_TAG\"\n  release:                                # リリース設定\n    name: 'Release $CI_COMMIT_TAG'\n    description: 'Release created from $CI_COMMIT_TAG'\n    tag_name: '$CI_COMMIT_TAG'           # タグを作成する\n    ref: '$CI_COMMIT_TAG'                # リリースのベースとなるタグ\n```\n\n\nコンテナイメージのリンクを追加することで、さらに内容を充実させることができます：\n\n\n```\n\nrelease:\n  name: 'Release $CI_COMMIT_TAG'\n  description: 'Release created from $CI_COMMIT_TAG'\n  tag_name: '$CI_COMMIT_TAG'\n  ref: '$CI_COMMIT_TAG'\n  assets:\n    links:\n      - name: 'Container Image'\n        url: '$CI_REGISTRY_IMAGE/main:$CI_COMMIT_TAG'\n        link_type: 'image'\n```\n\n\nコミットメッセージに基づいて自動リリースノートを生成する場合は次のようにします：\n\n\n```\n\nrelease:\n  name: 'Release $CI_COMMIT_TAG'\n  description: 'Release notes for version $CI_COMMIT_TAG'\n  tag_name: '$CI_COMMIT_TAG'\n  ref: '$CI_COMMIT_TAG'\n  auto_generate_release_notes: true    # Enables automatic notes\n```\n\n\n自動リリースノートを充実させるには\n\n\n* 規則的なコミットメッセージを使用する（例：feat:, fix:）\n\n* イシュー番号を含める（例：#123）\n\n* 件名と本文の間に空行を入れる\n\n\nデプロイ時の情報をリリースノートに記載したい場合は、以下のように設定できます：\n\n\n```\n\nrelease_job:\n  script:\n    - |\n      DEPLOY_TIME=$(date '+%Y-%m-%d %H:%M:%S')\n      CHANGES=$(git log $(git describe --tags --abbrev=0 @^)..@ --pretty=format:\"- %s\")\n      cat > release_notes.md \u003C\u003C EOF\n      ## デプロイ情報\n      - デプロイ日時: $DEPLOY_TIME\n      - 環境: 本番環境\n      - バージョン: $CI_COMMIT_TAG\n\n      ## 変更内容\n      $CHANGES\n\n      ## アーティファクト\n      - コンテナイメージ: \\`$CI_REGISTRY_IMAGE/main:$CI_COMMIT_TAG\\`\n      EOF\n  release:\n    description: './release_notes.md'\n```\n\n\nこの設定を行うと、Gitタグの作成時に自動でリリースが作成されるようになります。作成されたリリースは、GitLabの**デプロイ >\n\nリリース**で確認できます。\n\n\n#### 9. すべてをまとめる\n\n\n最終的なYAMLファイルは以下のようになります：\n\n\n```\n\nvariables:\n  TAG_LATEST: $CI_REGISTRY_IMAGE/$CI_COMMIT_REF_NAME:latest\n  TAG_COMMIT: $CI_REGISTRY_IMAGE/$CI_COMMIT_REF_NAME:$CI_COMMIT_SHA\n  STAGING_TARGET: $STAGING_TARGET    # CI/CD変数で設定\n  PRODUCTION_TARGET: $PRODUCTION_TARGET  # CI/CD変数で設定\n\nstages:\n  - publish\n  - staging\n  - release\n  - version\n  - production\n\n# ビルドとレジストリへの公開\n\n\npublish:\n  stage: publish\n  image: docker:latest\n  services:\n    - docker:dind\n  rules:\n    - if: $CI_COMMIT_BRANCH == \"main\" && $CI_COMMIT_TAG == null\n  script:\n    - docker build -t $TAG_LATEST -t $TAG_COMMIT .\n    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY\n    - docker push $TAG_LATEST\n    - docker push $TAG_COMMIT\n\n# stagingへデプロイ\n\n\nstaging:\n  stage: staging\n  image: alpine:latest\n  rules:\n    - if: $CI_COMMIT_BRANCH == \"main\" && $CI_COMMIT_TAG == null\n  script:\n    - chmod 400 $GITLAB_KEY\n    - apk add openssh-client\n    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY\n    - ssh -i $GITLAB_KEY -o StrictHostKeyChecking=no $USER@$STAGING_TARGET \"\n        docker pull $TAG_COMMIT &&\n        docker rm -f myapp || true &&\n        docker run -d -p 80:80 --name myapp $TAG_COMMIT\"\n  environment:\n    name: staging\n    url: http://$STAGING_TARGET\n\n# リリースの作成\n\n\nrelease_job:\n  stage: release\n  image: registry.gitlab.com/gitlab-org/release-cli:latest\n  rules:\n    - if: $CI_COMMIT_TAG\n  script:\n    - |\n      DEPLOY_TIME=$(date '+%Y-%m-%d %H:%M:%S')\n      CHANGES=$(git log $(git describe --tags --abbrev=0 @^)..@ --pretty=format:\"- %s\")\n      cat > release_notes.md \u003C\u003C EOF\n      ## デプロイ情報\n      - デプロイ日時：$DEPLOY_TIME\n      - 環境：本番環境\n      - バージョン：$CI_COMMIT_TAG\n\n      ## 変更内容\n      $CHANGES\n\n      ## アーティファクト\n      - コンテナイメージ：\\`$CI_REGISTRY_IMAGE/main:$CI_COMMIT_TAG\\`\n      EOF\n  release:\n    name: 'Release $CI_COMMIT_TAG'\n    description: './release_notes.md'\n    tag_name: '$CI_COMMIT_TAG'\n    ref: '$CI_COMMIT_TAG'\n    assets:\n      links:\n        - name: 'コンテナイメージ'\n          url: '$CI_REGISTRY_IMAGE/main:$CI_COMMIT_TAG'\n          link_type: 'image'\n\n# リリースタグ付きのバージョンを作成\n\n\nversion_job:\n  stage: version\n  image: docker:latest\n  services:\n    - docker:dind\n  rules:\n    - if: $CI_COMMIT_TAG\n  script:\n    - docker pull $TAG_COMMIT\n    - docker tag $TAG_COMMIT $CI_REGISTRY_IMAGE/main:$CI_COMMIT_TAG\n    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY\n    - docker push $CI_REGISTRY_IMAGE/main:$CI_COMMIT_TAG\n\n# 本番環境へデプロイ\n\n\nproduction:\n  stage: production\n  image: alpine:latest\n  rules:\n    - if: $CI_COMMIT_TAG\n  script:\n    - chmod 400 $GITLAB_KEY\n    - apk add openssh-client\n    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY\n    - ssh -i $GITLAB_KEY -o StrictHostKeyChecking=no $USER@$PRODUCTION_TARGET \"\n        docker pull $CI_REGISTRY_IMAGE/main:$CI_COMMIT_TAG &&\n        docker rm -f myapp || true &&\n        docker run -d -p 80:80 --name myapp $CI_REGISTRY_IMAGE/main:$CI_COMMIT_TAG\"\n  environment:\n    name: production\n    url: http://$PRODUCTION_TARGET\n```\n\n\n完成したパイプラインは\n\n\n* mainブランチでの変更をレジストリに公開します\n\n* mainブランチでの変更をstagingへデプロイします\n\n* タグが作成された際にリリースを作成します\n\n* リリースタグを付けたイメージを作成します\n\n* タグを基に本番環境へデプロイします\n\n\n主なメリット：\n\n\n* クリーンで再現性のあるローカル開発およびテスト環境が完成します\n\n* 構造化された本番環境へのデプロイフローにより、信頼性の高いデプロイを実現できます\n\n* 予期しない障害からの復旧パターンを確立します\n\n* より複雑なデプロイ戦略への拡張/導入に対応できます\n\n*\n\n\n### ベストプラクティス\n\n\n実装の際は、以下の原則を守りましょう：\n\n\n* 変数の使用方法からデプロイ手順まで、すべてを文書化する\n\n* GitLabのビルトイン機能（環境管理、リリース、レジストリ）を活用する\n\n* 適切なアクセス制御とセキュリティ対策を実施する\n\n* 強固なロールバック手順を計画し、障害に備える\n\n* パイプラインの設定はDRY（Don't Repeat Yourself：重複を避ける）を意識する\n\n\n## デプロイ戦略をスケールさせる\n\n\n次は何をすべきでしょうか？ここでは、継続的デプロイ戦略をさらに成熟させるために、検討すべきポイントを紹介します。\n\n\n### 高度なセキュリティ対策\n\n\n以下の方法でセキュリティを強化しましょう：\n\n\n* アクセスを制限した保護環境を設定する\n\n* 本番環境へのデプロイに承認を必須とする\n\n* セキュリティスキャンをパイプラインに統合する\n\n* 自動脆弱性評価を導入する\n\n* デプロイ関連の変更に対するブランチ保護ルールを適用する\n\n\n### 段階的なデリバリー戦略\n\n\n以下のような高度なデプロイ戦略を実装しましょう。\n\n\n* 機能フラグを活用して制御されたロールアウトを行う\n\n* リスクを軽減するためにカナリアデプロイを実施する\n\n* ブルーグリーンデプロイ戦略を導入する\n\n* A/Bテストを実施する\n\n* 動的環境管理を行う\n\n\n### モニタリングと最適化\n\n\n強固なモニタリング体制を確立しましょう：\n\n\n* デプロイ指標を追跡する\n\n* パフォーマンスモニタリングをセットアップする\n\n* デプロイアラートを設定する\n\n* デプロイのサービスレベル目標（SLO）を確立する\n\n* 定期的にパイプラインを最適化する\n\n\n## GitLabが選ばれる理由\n\n\nGitLabの継続的デプロイ機能は、現代のデプロイワークフローに最適です。GitLabは、コンテナレジストリ、環境管理、デプロイ追跡などの機能が1つのインターフェースに集約されており、コードから本番環境へのプロセスを効率化します。また、環境ごとの変数、デプロイ承認ゲート、ロールバック機能を備えており、本番環境へのデプロイ時に求められるセキュリティと管理を実現します。さらに、Review\n\nApps（レビューアプリ）や機能フラグを活用することで、段階的なデリバリー（プログレッシブデリバリー）戦略も可能です。GitLabのDevSecOpsプラットフォームの一部として、これらのCD機能はソフトウェアライフサイクル全体とシームレスに連携します。\n\n\n## 無料トライアルで今すぐスタート！\n\n\n継続的デプロイへの道のりは、革命ではなく進化のプロセスです。まずは基本を押さえ、しっかりとした基盤を築き、チームの成長に応じて徐々に高度な機能を取り入れていきましょう。GitLabは、最初の自動デプロイから、複数環境にまたがる複雑なデリバリーパイプラインまで、あらゆる段階でサポートするためのツールと柔軟性を提供します。 \n\n\n> [GitLab\n\n> Ultimateの無料トライアル](https://about.gitlab.com/ja-jp/free-trial/devsecops/)で、今日から継続的デプロイメントを始めましょう。\n\n\n\u003Cbr>\u003Cbr>\n\n\n\\*監修：川瀬 洋平 [@ykawase](https://gitlab.com/ykawase)\u003Cbr>\n\n\n（GitLab合同会社 カスタマーサクセス本部 シニアカスタマーサクセスマネージャー）*\n",[1042,1043],"Benjamin Skierlak","James Wormwell","2025-06-11","2025-01-28",[804,110,805,14,802],{"slug":1048,"featured":6,"template":679},"from-code-to-production-a-guide-to-continuous-deployment-with-gitlab","content:ja-jp:blog:from-code-to-production-a-guide-to-continuous-deployment-with-gitlab.yml","From Code To Production A Guide To Continuous Deployment With Gitlab","ja-jp/blog/from-code-to-production-a-guide-to-continuous-deployment-with-gitlab.yml","ja-jp/blog/from-code-to-production-a-guide-to-continuous-deployment-with-gitlab",{"_path":1054,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1055,"content":1061,"config":1067,"_id":1069,"_type":16,"title":1070,"_source":18,"_file":1071,"_stem":1072,"_extension":21},"/ja-jp/blog/getting-started-with-gitlab-how-to-import-your-projects-to-gitlab",{"title":1056,"description":1057,"ogTitle":1056,"ogDescription":1057,"noIndex":6,"ogImage":1058,"ogUrl":1059,"ogSiteName":770,"ogType":771,"canonicalUrls":1059,"schema":1060},"GitLab入門：プロジェクトをGitLabにインポートする方法","Bitbucket、Gitea、GitHub、GitLab Self-Managedなど、さまざまなソースからプロジェクトをインポートする方法についてご説明します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097248/Blog/Hero%20Images/Blog/Hero%20Images/blog-getting-started-with-gitlab-banner-0497-option4-fy25_cFwd8DYFLekdnOLmbbChp_1750097247785.png","https://about.gitlab.com/blog/getting-started-with-gitlab-how-to-import-your-projects-to-gitlab","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab入門：プロジェクトをGitLabにインポートする方法\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Abubakar Siddiq Ango\"}],\n        \"datePublished\": \"2025-01-28\",\n      }",{"title":1056,"description":1057,"authors":1062,"heroImage":1058,"date":1045,"body":1064,"category":14,"tags":1065,"updatedDate":1066},[1063],"Abubakar Siddiq Ango","*「GitLab入門」シリーズへようこそ！このシリーズでは、GitLab\nDevSecOpsプラットフォームを初めて使う方に向けて、基本的な使い方を解説します。*\n\n\nGitLab\nDevSecOpsプラットフォームを最大限に活用するためには、プロジェクトのインポート方法を理解することがきわめて重要です。[アカウントのセットアップ](https://university.gitlab.com/pages/getting-started)、ユーザーの招待、ユースケースやチーム構成に応じたユーザーの[整理](https://about.gitlab.com/blog/getting-started-with-gitlab-how-to-manage-users/)が完了したら、次は既存のプロジェクトをGitLabに取り込み、コラボレーションを開始します。これらのプロジェクトは、コンピューター上のローカルファイルでも、別のソースコード管理プラットフォームでホストされているものでも構いません。それでは、それぞれのインポート方法を見ていきましょう。\n\n\n## ローカルプロジェクトファイルをインポートする\n\n\n新しいプロジェクトを作成するたびに、一から始める必要はありません。以下の手順に従うことで、既存のレガシープロジェクトやアプリケーションを、バージョン管理の有無にかかわらずGitLabに取り込めます。\n\n\n### Gitプロジェクト\n\n\n1.\nローカルプロジェクトで[すでにGitが初期化されている](https://docs.gitlab.com/ee/topics/git/commands.html#git-init)場合は、GitLabで新しいプロジェクトを作成し、プロジェクトページの右上にある「**コード**」ボタンをクリックして、SSHまたはHTTPSのURLを取得します。\n\n\n![GitLabでSSH/HTTPS\nURLを使用して新規プロジェクトを作成する](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097254/Blog/Content%20Images/Blog/Content%20Images/image8_aHR0cHM6_1750097252717.png)\n\n\n2. ターミナルに切り替え、プロジェクトフォルダに移動します。\n\n\n```bash  \n\ncd /project_folder  \n\n```\n\n\n3. 既存の[Git\norigin](https://git-scm.com/book/ms/v2/Git-Basics-Working-with-Remotes)をバックアップします。\n\n\n```bash\n\n\ngit remote rename origin old-origin\n\n\n```\n\n\n4.\n新しいoriginの[GitLabリモート](https://git-scm.com/book/ms/v2/Git-Basics-Working-with-Remotes)のURLを追加します（SSHを使用する場合）。\n\n\n```bash  \n\ngit remote add origin\n[git@gitlab.com](mailto:git@gitlab.com):gitlab-da/playground/abubakar/new-test-repo.git  \n\n```\n\n\n（HTTPSを使用する場合）\n\n\n```bash  \n\ngit remote add origin\nhttps://gitlab.com/gitlab-da/playground/abubakar/new-test-repo.git  \n\n```\n\n\n5.\nすべての[ブランチ](https://docs.gitlab.com/ee/user/project/repository/branches/)と[タグ](https://docs.gitlab.com/ee/user/project/repository/tags/)をGitLabにプッシュします。\n\n\n```bash  \n\ngit push --set-upstream origin --all  \n\ngit push --set-upstream origin --tags  \n\n```\n\n\nこれで、すべてのファイル、ブランチ、タグがGitLabにプッシュされ、コラボレーションを開始できるようになります。\n\n\n### Gitが未初期化のプロジェクト\n\n\nGitをまだ初期化していないプロジェクトの場合、以下の手順でGitを初期化し、既存のファイルをコミットしてGitLabにプッシュする必要があります。\n\n\n```bash  \n\ngit init --initial-branch=main  \n\ngit remote add origin\ngit@gitlab.com:gitlab-da/playground/abubakar/new-test-repo.git  \n\ngit add .  \n\ngit commit -m \"Initial commit\"  \n\ngit push --set-upstream origin main  \n\n```\n\n\n## オンラインソースからインポートする\n\n\nGitLab.comや他のプラットフォームにあるプロジェクトを、別のGitLabインスタンス（たとえばSelf-Managedインスタンス）に移行したい場合や、他のプラットフォームからGitLab.comに移行したい場合は、GitLabのプロジェクトインポート機能を利用できます。この機能は、新しいプロジェクトを作成する際に使用できます。\n\n\n![新規プロジェクト作成画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752378521/Blog/rcilwlmji2azhylqpcpa.png)\n\n\nプロジェクトをインポートすると、ソースに応じてプロジェクトのファイルやその他の一部のコンポーネントが移行されます。Bitbucket、GitHub、Gitea、GitLabインスタンスなど、さまざまなソースからのインポートが可能です。GitLab.comでは、これらのインポートソースはデフォルトで有効になっていますが、[Self-Managed環境では管理者によって有効化する](https://docs.gitlab.com/ee/administration/settings/import_and_export_settings.html#configure-allowed-import-sources)必要があります。以降のセクションでは、いくつかのソースについて詳しく見ていきます。\n\n\n![サードパーティのソースからプロジェクトをインポートする](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752378540/Blog/xks5zenxe5h27accwj1a.png)\n\n\n## GitLabソース\n\n\nGitLab.comやGitLab\nSelf-Managedインスタンスからプロジェクトをエクスポートするには、プロジェクトの設定にある「プロジェクトのエクスポート」機能を使用できます。\n\n\n![エクスポートプロジェクト画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752378558/Blog/wxkrvotrhabmc3snfyxt.png)\n\n\nエクスポート手順：\n\n\n- プロジェクトの設定に移動し、「**一般**」の項目をクリックします。\n\n- スクロールして「**高度な設定**」 セクションを展開します。\n\n- 「**プロジェクトのエクスポート**」を選択します。\n\n- 次の通知が表示されます。「プロジェクトのエクスポートを開始しました。ダウンロードリンクをメールで送信し、このページで利用可能になります。」\n\n-\nエクスポートの生成が完了したら、メールに記載されたリンクを開くか、プロジェクトの設定ページを更新すると、「エクスポートをダウンロード」オプションが表示されます。\n\n\n### プロジェクトをインポートする\n\n\n![エクスポートされたGitLabプロジェクトをインポートする](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097253/Blog/Content%20Images/Blog/Content%20Images/image7_aHR0cHM6_1750097252718.png)\n\n\n- 対象のGitLabインスタンスで「**新規プロジェクト**」ボタンをクリックします。\n\n- 「**プロジェクトのインポート**」を選択し、インポートソースの一覧から「**GitLab エクスポート**」をクリックします。\n\n- プロジェクト名を指定し、エクスポートファイルを選択した後、「**プロジェクトのインポート**」をクリックします。\n\n- 「インポート中です」のページが表示され、完了するとインポートしたプロジェクトのページにリダイレクトされます。\n\n\nインポートにかかる時間は、プロジェクトのサイズによって異なります。なお、プロジェクトの一部がエクスポートされなかったり、インポート後に若干の変更が生じたりする場合があります。これらの制限事項については、[ドキュメント](https://docs.gitlab.com/ee/user/project/settings/import_export.html#export-a-project-and-its-data)をご確認ください。個々のプロジェクトではなくグループ全体を移行する場合は、[直接転送](https://docs.gitlab.com/ee/user/group/import/index.html)を使用することをおすすめします。これにより、グループ全体のコピーが作成されます。\n\n\n## サードパーティプロバイダー\n\n\nGitLabは、Bitbucket Cloud、Bitbucket\nServer、FogBugz、Gitea、GitHubからのプロジェクトのインポートに対応しています。インポート手順は、対応しているすべてのサードパーティでほぼ同じですが、認証方法が異なります。ここでは、認証方法の例をいくつかご紹介します。\n\n\n### GitHub\n\n\n![GitHub認証画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097253/Blog/Content%20Images/Blog/Content%20Images/image6_aHR0cHM6_1750097252719.png)\n\n\nGitHubのプロジェクトをGitLabにインポートする場合、以下の3つの方法があります。\n\n\n- [GitHub\nOAuthを使用する](https://docs.gitlab.com/ee/user/project/import/github.html#use-github-oauth)\n\n-\n[GitHubのパーソナルアクセストークンを使用する](https://docs.gitlab.com/ee/user/project/import/github.html#use-a-github-personal-access-token)\n\n-\n[APIを使用する](https://docs.gitlab.com/ee/user/project/import/github.html#use-the-api)\n\n\n「GitHub\nOAuthを使用する」方法と「パーソナルアクセストークンを使用する」方法は似ていますが、GitLabがリポジトリへアクセスするための認証方法に違い\nがあります。より簡単なのはOAuthを使用する方法で、「GitHubで認証」ボタンをクリックするだけで、GitHubの認証ページにリダイレクトされ、アクセスを許可することで接続が完了します。認証後、プロジェクトの一覧が表示され、インポートするプロジェクトを選択できます。\n\n\n![「リポジトリをGitHubからインポートする」画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752378579/Blog/dweaxwgtvikiauvj1juk.png)\n\n\nOAuthを使用しない場合は、`repo`スコープと`read:\norg`スコープを選択してGitHubのパーソナルアクセストークンを生成し、それを「インポート」ページで入力する必要があります。APIを使ってインポートする場合は、このパーソナルアクセストークンを使用することで、スクリプトやアプリケーションでGitLabの[Import\nREST\nAPIエンドポイント](https://docs.gitlab.com/ee/api/import.html#import-repository-from-github)を利用できます。\n\n\n次のデモ動画では、GitLabのシニアデベロッパーアドボケートを務めるFernando\nDiazが、OAuthを使ってGitHubからプロジェクトをインポートする方法を解説しています。\n\n\n\u003C!-- blank line -->  \n\n\u003Cfigure class=\"video_container\"> \n  \u003Ciframe src=\"https://www.youtube.com/embed/0Id5oMl1Kqs?si=esF6wbz2j2JlhDVL\" frameborder=\"0\" allowfullscreen=\"true\"> \u003C/iframe>  \n\u003C/figure>\n\n\u003C!-- blank line -->\n\n\nGitLabの[インポートに関するドキュメント](https://docs.gitlab.com/ee/user/project/import/github.html)では、前提要件、既知の問題、GitHub\nEnterpriseからのインポート手順、その他の重要な情報を参照していただけます。\n\n\n### Bitbucket\n\n\nBitbucketからプロジェクトをインポートする手順は、GitHubの例とほとんど同じです。[Bitbucket\nCloud](https://docs.gitlab.com/ee/user/project/import/bitbucket.html)（BitbucketのSaaS版）を使用する場合はOAuth認証が可能ですが、[Bitbucket\nServer](htthttps://docs.gitlab.com/ee/user/project/import/bitbucket_server.html)（エンタープライズ向けのセルフホスト版）の場合は、URL、ユーザー名、パーソナルアクセストークンを入力する必要があります。「インポート」画面でBitbucket\nCloudを選択すると、自動的にAtlassianの認証ページ に移動し、Bitbucketの認証が行われます。\n\n\n![Bitbucketからプロジェクトをインポートする](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097253/Blog/Content%20Images/Blog/Content%20Images/image9_aHR0cHM6_1750097252720.png)\n\n\nBitbucketのプロジェクトは、[GitLab Import\nAPI](https://docs.gitlab.com/ee/api/import.html)を使用してインポートすることも可能です。\n\n\n### Gitea\n\n\n![Giteaからプロジェクトをインポートする](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097253/Blog/Content%20Images/Blog/Content%20Images/image10_aHR0cHM6_1750097252722.png)\n\n\n[Gitea](https://docs.gitlab.com/ee/user/project/import/gitea.html)からプロジェクトをインポートするには、Giteaのプラットフォーム上で[パーソナルアクセストークン](https://docs.gitea.com/next/development/api-usage#authentication-via-the-api)を作成し、それをGiteaサーバーのURLとともにGitLabのインポートページで入力する必要があります。なお、OAuth認証はサポートされていません。\n\n\n### 汎用リモートGitリポジトリ\n\n\n![リモートGitリポジトリからプロジェクトをインポートする](https://res.cloudinary.com/about-gitlab-com/image/upload/v1752378589/Blog/v4ysiomfr6mqa14p5hii.png)\n\n\nお使いのGitプロバイダーがサポートされていない場合や、サポートされている方法でインポートできない場合、アクセス可能な`https://`または`git://`のURLを使ってリポジトリをインポートできます。リポジトリが公開されていない場合は、リポジトリURLに加えて、ユーザー名とパスワード（または多要素認証が必要な場合はアクセストークン）を入力する必要があります。\n\n\nこの方法は、リモートプロジェクトのコピーを維持し、同期を保つ目的にも使用できます。これを[ミラーリング](https://docs.gitlab.com/ee/user/project/repository/mirror/)といい、異なるプラットフォーム間でリポジトリを同期し、最新の状態を維持できます。たとえば、プライベートとパブリックのリポジトリを分けつつ、両者で同じ内容を保持できるため、内部プロジェクトをオープンソース化する際に便利です。また、異なるプラットフォームを使用する契約業者と協力していて、両者がコードベースにアクセスする必要がある場合にも活用できます。\n\n\n## まとめ\n\n\nGitLabのインスタンス間や外部ソースからのインポートおよび移行は、どのデータをどの方法でインポートするのかを明確に計画した上で実施すべき重要なプロセスです。ほとんどのサードパーティのインポート方法では、ファイル、イシュー、マージリクエストなどのプロジェクトアイテムがインポートされますが、一部の方法には既知の問題や制限があることにご注意ください。GitLabの[インポートに関するドキュメント](https://docs.gitlab.com/ee/user/project/import/)には、サポートしているすべての方法の詳細情報が記載されており、移行を計画する際に役立ちます。\n\n\n> ####\nもっとGitLabについて知りたい場合は、[GitLabユニバーシティのコースに登録](https://university.gitlab.com/)するか、[GitLab\nUltimateの無料トライアル](https://about.gitlab.com/ja-jp/free-trial/devsecops/)を今すぐお試しください。\n\n\n\u003Cbr>\n\n\u003Cbr>\n\n\n*監修：小松原 つかさ  [@tkomatsubara](https://gitlab.com/tkomatsubara)\u003Cbr>\n\n（GitLab合同会社 ソリューションアーキテクト本部 シニアパートナーソリューションアーキテクト）*\u003Cbr>\n",[14,802,781],"2025-05-26",{"slug":1068,"featured":6,"template":679},"getting-started-with-gitlab-how-to-import-your-projects-to-gitlab","content:ja-jp:blog:getting-started-with-gitlab-how-to-import-your-projects-to-gitlab.yml","Getting Started With Gitlab How To Import Your Projects To Gitlab","ja-jp/blog/getting-started-with-gitlab-how-to-import-your-projects-to-gitlab.yml","ja-jp/blog/getting-started-with-gitlab-how-to-import-your-projects-to-gitlab",{"_path":1074,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1075,"content":1081,"config":1086,"_id":1088,"_type":16,"title":1089,"_source":18,"_file":1090,"_stem":1091,"_extension":21},"/ja-jp/blog/gitlab-17-8-release",{"title":1076,"description":1077,"ogTitle":1076,"ogDescription":1077,"noIndex":6,"ogImage":1078,"ogUrl":1079,"ogSiteName":770,"ogType":771,"canonicalUrls":1079,"schema":1080},"GitLab 17.8リリース","GitLab 17.8でリリースした最新機能をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662175/Blog/Hero%20Images/product-gl17-blog-release-cover-17-8-0093-1800x945-fy25.png","https://about.gitlab.com/blog/gitlab-17-8-release","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 17.8リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2025-01-16\",\n      }",{"title":1076,"description":1077,"authors":1082,"heroImage":1078,"date":1083,"body":1084,"category":14,"tags":1085,"updatedDate":1045},[676],"2025-01-16","**コンテナリポジトリのセキュリティが向上したGitLab 17.8をリリース**\n\nこのたび、GitLab 17.8のリリースを発表しました。このリリースでは、コンテナリポジトリのセキュリティ強化、リリース関連のデプロイの一覧表示、機械学習モデル検証の追跡、GitLab Dedicated向けLinuxホステッドランナーなど、さまざまな機能が追加されました！  \n\nこれらの機能は、今回のリリースに含まれる60件以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。  \n\nGitLab 17.8には、GitLabコミュニティのユーザーから121件ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースも、ユーザーのみなさまのご協力なくしては実現しませんでした。  \n来月のリリースで予定されている内容を先取りするには、17.9リリースのキックオフビデオも視聴できる[今後のリリースページ](https://about.gitlab.com/direction/kickoff/)をご覧ください。  \n\n> [GitLab 17.8のリリースでは、コンテナリポジトリのセキュリティが向上しました！クリックしてSNSで共有しましょう！](http://twitter.com/share?text=GitLab+17.8+released+with+improved+container+repository+security&url=https://about.gitlab.com/releases/2025/01/16/gitlab-17-8-released/&hashtags=)\n\n## 今月の[MVP](https://about.gitlab.com/community/mvp/)は[Océane Legrand](https://gitlab.com/oceane_scania)さんと[Juan Pablo Gonzalez](https://gitlab.com/ScanianJP)さんが受賞\n\nMVPには、誰もが[GitLabコミュニティのコントリビューターをMVPに推薦できます](https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490)。現在の候補者を応援したり、他の誰かをノミネートしてみませんか🙌\n\n[Océane Legrand](https://gitlab.com/oceane_scania)さんは共同開発プログラムを通じて、Juan Pablo Gonzalezさんと協力しながら、Conanのパッケージレジストリの機能セットを強化する取り組みを主導してきました。お二人は、一般公開（GA）に向けた機能の準備、またConanバージョン2のサポート実装に重点的に取り組んできました。お二人の例は、GitLabのパッケージレジストリ機能を大幅に改善する上で、共同開発プログラムがいかに有効であるかを示しています。  \n\nLegrandさんとGonzalezさんは、GitLabのコントリビューターサクセスチームでシニアフルスタックエンジニアを務める[Raimund Hook](https://gitlab.com/stingrayza)によって推薦されました。Hookは、お二人が連携しながら粘り強く取り組み、Conanパッケージレジストリの機能改善を継続的に進めた点に注目しました。お二人の功績はGitLabの価値観を体現するものであり、GitLabプラットフォーム上でConanを利用する全ユーザーに恩恵をもたらします。\n\nScania社のフルスタックデベロッパーであるOcéane Legrandさんは、AWS上のセルフホスト型GitLabインスタンスの保守作業を担っています。Legrandさんは「私がオープンソースで取り組んでいる作業は、GitLabとScaniaの両方に影響を与えています。共同開発プログラムを通じてコントリビュートすることで、Rubyやバックグラウンドマイグレーションの経験など、新たなスキルを習得できました。Scaniaの所属チームでアップグレード作業中に問題が発生した際、共同開発プログラムですでに同じ問題を経験していたため、トラブルシューティングを手伝うことができました」と述べています。  \n\nGitLabの共同開発プログラムについて詳しくは[こちら](https://about.gitlab.com/community/co-create/)をご覧ください。これらのプログラムでは、GitLabのお客様が、当社製品チームやエンジニアリングチームと直接連携しながら新機能の開発や既存機能の改善に取り組んでいます。\n\n## GitLab 17.8のリリースに含まれる主な改善点\n\n### 保護されたコンテナリポジトリによるセキュリティ強化\n\nSaaS：Free、Premium、Ultimate\u003Cbr>\nSelf-Managed：Free、Premium、Ultimate\n\n本リリースでは、保護されたコンテナリポジトリが導入されました。この新機能は、コンテナイメージを管理する際のセキュリティと制御の課題を解決することを目的に追加されました。組織は、機密性の高いコンテナリポジトリへの不正アクセス、意図せぬ変更、細かい制御が設定できない、コンプライアンスの維持の難しさといった課題に苦労することがよくあります。このソリューションは、厳格なアクセス制御、プッシュ、プル、管理の操作権限を詳細に設定できるようにし、、GitLab CI/CDパイプラインとの統合をシームレスにすることで、セキュリティを強化します。\n\n保護されたコンテナリポジトリの導入で、セキュリティ侵害リスクや過失によって重要な資産が変更されるリスクが軽減されます。また、開発速度とセキュリティの両方を維持しながら、ワークフローを効率化できます。コンテナレジストリの全体的なガバナンスが向上されるほか、組織のニーズに基づいて重要なコンテナ資産が保護されていることが分かるため、安心感も得られます。\n\nこの機能と[保護パッケージ](https://gitlab.com/groups/gitlab-org/-/epics/5574)は、`gerardo-navarro`さんとシーメンス社のみなさまによるコミュニティへのコントリビュートにより実現しました。この場を借りて、GitLabに多大なるコントリビュートをしてくださったNavarroさんをはじめ、シーメンス社のみなさまに感謝申し上げます！この変更に対するNavarroさんとシーメンス社の方々のコントリビュートについて、詳しくは[こちらの動画](https://www.youtube.com/watch?v=5-nQ1_Mi7zg)をご確認ください。Navarroさんが、外部のコントリビューターとしてGitLabにコントリビュートした経験から得た洞察やベストプラクティスを紹介してくれています。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/packages/container_registry/container_repository_protection_rules.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/480385)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/protected_containers.png\">\n\n### リリース関連のデプロイの一覧表示\n\nSaaS：Free、Premium、Ultimate\u003Cbr>\nSelf-Managed：Free、Premium、Ultimate\n\nGitLabでは、これまでもGitタグを元にしたリリースの作成およびデプロイの追跡をサポートしてきました。しかし、これらの情報が異なる場所に分散していたため、紐づけるのが困難でした。本リリースより、リリース関連のデプロイがすべてリリースページに直接表示されるようになりました。これにより、リリースマネージャーは、リリースのデプロイ先や、どの環境がデプロイ待ちであるかといったステータスを素早く確認できます。既存のデプロイページではタグ付けされたデプロイのリリースノートを表示されますが、この機能は既存のデプロイページの統合を補完するものです。\n\nこの場を借りて、GitLabに両機能をコントリビュートしてくれた[Anton Kalmykov](https://gitlab.com/antonkalmykov)さんに心より感謝します。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/releases/)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/501169)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/list_the_deployments_related_to_a_release.png\">\n\n### 機械学習モデル検証の追跡機能の一般公開\n\nSaaS：Free、Premium、Ultimate\u003Cbr>\nSelf-Managed：Free、Premium、Ultimate\n\n機械学習モデルを作成する際、データサイエンティストはモデルの性能向上を目的に、さまざまなパラメーターや設定、特徴量エンジニアリングを試行することがよくあります。データサイエンティストにとって、これらのメタデータや関連するアーティファクトをすべて追跡し、後から実験を再現できるようにするのは容易ではありません。機械学習モデル検証の追跡により、パラメータ、メトリクス、アーティファクトをGitLabに直接記録できるため、後から簡単にアクセスできるだけでなく、すべての実験データをGitLab環境内で保持できるようになりました。この機能は、データ表示の強化、権限設定の強化、GitLabとのより緊密な統合、バグ修正といった改善が加えられ、本リリースより一般提供されています。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/ml/experiment_tracking/)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/9341)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/jkZq3SYm7a8?si=AaBF71InBSRhZWZa\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### GitLab Dedicated向けLinuxホステッドランナーが限定的に利用可能に\n\nSaaS：Ultimate\u003Cbr>\nSelf-Managed：-\n\n本リリースより、GitLab Dedicated向けLinuxホステッドランナーが限定的に利用可能になりました。\n\nランナーのフリート管理作業は複雑になりがちで、デベロッパーの要求に応じてすべてのCI/CDジョブをスケールするには、豊富な経験が必要です。\nGitLab Dedicated向けのホステッドランナーでは、CI/CDジョブ用に徹底管理されたランナーを活用できます。そのため、独自のランナーインフラストラクチャを管理せずに済むほか、ランナーには、GitLab Dedicatedと同等のセキュリティ、柔軟性、効率性が確保されます。\nホステッドランナーは、CI/CDのニーズに合わせて自動的にスケールし、ピーク時や大規模プロジェクトにおいてパフォーマンスを最適化します。今回の限定リリースでは、2～32 vCPU、8～128 GBのメモリを搭載した、さまざまなサイズのLinuxランナーをご利用いただけます。\n\n限定リリース期間中にGitLab Dedicated向けホステッドランナーをご利用になりたい場合は、GitLabの担当者までお問い合わせください。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/dedicated/hosted_runners.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509142)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/runner_dedicated.png\">\n\n### macOS大規模M2 Proホステッドランナーが利用可能に（ベータ版）\n\nSaaS：Premium、Ultimate\u003Cbr>\nSelf-Managed：-\n\nM2 Proの性能を、モバイルDevOpsチームが活用できるようになりました。  \nM1ランナーの最大2倍、x86-64 macOSランナーの最大6倍の性能を誇るM2 Proランナーを使用することで、開発チームによるアプリケーションのビルドとデプロイの作業速度が向上します。\n\nこのランナーは、GitLab CI/CDに完全統合され、オンデマンドで利用可能です。これにより、Appleエコシステム向けアプリケーションの作成、テスト、およびデプロイがより迅速かつシームレスになります。\n\n`.gitlab-ci.yml`ファイルのタグに`saas-macos-large-m2pro`を指定して、新しいM2 Proランナーをぜひお試しください。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/runners/hosted_runners/macos.html)  \n[エピック](https://gitlab.com/groups/gitlab-org/ci-cd/shared-runners/-/epics/19)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/rocket_m2pro.png\">\n\n## GitLab 17.8のリリースに含まれるその他の改善点\n\n### イシューまたはマージリクエスト内における複数のto-doアイテムの追跡\n\nSaaS：Free、Premium、Ultimate\u003Cbr>\nSelf-Managed：Free、Premium、Ultimate\n\n単一のイシューまたはマージリクエスト内で、複数のディスカッションやメンションを追跡できるようになりました。この新機能は、メンションやアクションごとに個別のto-doアイテムを表示させて、重要な更新やリクエストを見逃さないようサポートします。この機能強化により、作業をより効果的に管理し、チームのニーズにより効率的に対応できるようになります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/todos.html#multiple-to-do-items-per-object)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/28355)\n\n### エピックの祖先を把握しやすい表示に\n\nSaaS：Ultimate\u003Cbr>\nSelf-Managed：Ultimate\n\n祖先ウィジェットの設計が見直されたことで、[エピックの階層](https://docs.gitlab.com/ee/user/group/epics/#relationships-between-epics-and-other-items)を確認しやすくなりました。各エピックの上部に、パンくずリストのようなナビゲーションガイドで目立つように表示されます。1つ上の親と一番上の親を一目で確認し、エピック間の関係を素早く把握できます。これにより、プロジェクト構造の概要を分かりやすく管理し、関連するエピック間を簡単に移動できます。\n\n管理者は、[エピックの新しい外観](https://docs.gitlab.com/ee/user/group/epics/epic_work_items.html)を有効にする必要があります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/epics/#relationships-between-epics-and-other-items)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509920)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/epic_ancestors.png\">\n\n### エピックから親を追加\n\nSaaS：Ultimate\u003Cbr>\nSelf-Managed：Ultimate\n\nイシューの場合と同様に、直接エピックから親を追加することで、エピック階層を簡単に管理できるようになりました。このプロセスの効率化により、作業をより柔軟に整理できるようになり、エピック間の関係を迅速に構築し、プロジェクト構造を分かりやすく保つことができます。\n\n管理者は、[エピックの新しい外観](https://docs.gitlab.com/ee/user/group/epics/epic_work_items.html)を有効にする必要があります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/epics/#relationships-between-epics-and-other-items)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509923)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/epic_parent.png\">\n\n### エピック、イシュー、目標の子アイテムにイテレーションフィールドを表示\n\nSaaS：Premium、Ultimate\u003Cbr>\nSelf-Managed：Premium、Ultimate\n\nプランナーはエピックの詳細を閲覧する際、どの子イシューがイテレーション（スプリント）で計画されていて、どれがまだ計画されていないかを確認できなければなりません。この新機能により、定義されたすべての作業がスプリントで計画されているかどうか、チームがより簡単に確認できるようになりました。\n\n管理者は、[エピックの新しい外観](https://docs.gitlab.com/ee/user/group/epics/epic_work_items.html)を有効にする必要があります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/iterations)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/510005)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/show_iteration_field_on_items_within_the_work_items_child_widget.png\">\n\n### エピックのWebhook\n\nSaaS：Premium、Ultimate\u003Cbr>\nSelf-Managed：Premium、Ultimate\n\nエピックのWebhookを使用することで、ワークフローの自動化が強化されるだけでなく、エピックで変更が発生するたびに、お好みのツールでリアルタイムの更新を受け取ることができます。お使いの他のサービスとGitLabを統合すると、コラボレーションを強化し、プロジェクトの進捗を常に把握できます。また、アプリケーション間を何度も移動する必要がなくなり、プロセスが効率化されます。\n\n管理者は、[エピックの新しい外観](https://docs.gitlab.com/ee/user/group/epics/epic_work_items.html)を有効にする必要があります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509928)\n\n### GitLab Community Editionでパイプラインの制限を適用可能に\n\nSaaS：-\u003Cbr>\nSelf-Managed：Free、Premium、Ultimate\n\n管理者は、GitLab Community Edition（CE）にCI/CDに関する制限を適用して、パイプラインリソースの使用を制御できるようになりました。これまで、この機能はGitLab Enterpriseエディションでのみ利用可能でした。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/settings/continuous_integration.html#set-cicd-limits)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/287669)\n\n### Kubernetes用ダッシュボードでのポッド検索\n\nSaaS：Free、Premium、Ultimate\u003Cbr>\nSelf-Managed：Free、Premium、Ultimate\n\n大規模なデプロイの場合、Kubernetes用ダッシュボードで特定のポッドを見つけるのには時間がかかる可能性があります。新たに検索バーが追加され、ポッドの名前を指定して素早く絞り込めるようになりました。利用可能なすべてのポッドが検索対象に含まれます。また、ステータスフィルターと組み合わせて、モニタリングやトラブルシューティングが必要なポッドを特定することも可能です。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/508010)\n\n### シークレット検出の実行時に修正手順が表示されるように\n\nSaaS：Ultimate\u003Cbr>\nSelf-Managed：Ultimate\n\n漏洩した認証情報を使用して攻撃者がシステムに侵入するリスクを最小限に抑えるには、公開されてしまったシークレットに素早く対処しなければなりません。正しく修正するには、認証情報のローテーションや不正アクセスできる可能性がある箇所の調査など、単にシークレットを削除するだけでなく、さまざまな手順を行う必要があります。本リリースから、システムの安全性を保つために、シークレット検出を実行すると、検出されたシークレットのタイプごとに具体的な修正手順が表示されるようになりました。この修正手順を参考にすることで、情報漏洩に体系的に対処し、セキュリティ侵害のリスクを軽減できます。パイプラインが完了すると、検出されたすべての脆弱性に関する修正手順が表示されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/secret_detection/)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/505757)\n\n### `override_ci`戦略が一元化されたワークフロールールの適用に対応\n\nSaaS：Ultimate\u003Cbr>\nSelf-Managed：Ultimate\n\nパイプライン実行ポリシーの`override_ci`戦略が、`include:project`の利用時に、プロジェクト設定で定義されたジョブだけでなく、ポリシー内で定義されたジョブに対しても、ポリシーの実施を支援するワークフロールールの使用をサポートするようになりました。ポリシー内でワークフロールールを定義することで、プロジェクトでのブランチパイプラインの使用を防ぐルールを設定するなど、特定のルールに基づいてパイプライン実行ポリシーによって実行されるジョブをフィルタリングできます。\n\nポリシー内で定義されたジョブのみを対象とするワークフロールールを切り離して使用するには、ポリシーによってグローバルにルールを定義せずに、ジョブに対してルールを定義するのがおすすめです。もしくは、別の`include`フィールドを用いて、ジョブやルールをグループ化することもできます。\n\nこれまでは`override_ci`戦略を使用すると、パイプライン実行ポリシーで定義されたジョブにのみ、ワークフロールールを適用できました。\n\n`Inject_ci`戦略に変更はありません。ワークフロールールは、プロジェクトのワークフロールールには影響を及ぼさず、ポリシーのジョブが実行されるタイミングを制御するためだけに利用できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html#override_project_ci)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/512123)\n\n### パイプライン実行ポリシーで`skip_ci`を設定可能に\n\nSaaS：Ultimate\u003Cbr>\nSelf-Managed：Ultimate\n\nパイプライン実行ポリシー（PEP）に新たな設定オプションを導入され、より柔軟に`[skip ci]`ディレクティブを処理できるようになりました。この機能によって、重要なセキュリティおよびコンプライアンスのチェックを確実に実行しつつ、パイプラインの実行をバイパスする必要がある、特定の自動化されたプロセス（セマンティックリリースなど）に対応できます。\n\nこの機能を使用するには、パイプライン実行ポリシーのYAML設定で`skip_ci`を`allowed: false`に設定するか、ポリシーエディターで「**ユーザーがパイプラインをスキップできないようにする**」を有効にします。次に、`[skip ci]`の使用を許可するユーザーまたはサービスアカウントを指定します。`skip_ci`設定内で例外として除外されない限り、デフォルトでは、すべてのユーザーがパイプライン実行ジョブをスキップできません。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html#skip_ci-type)  \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/15647)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/service-account-exception-skip_ci-pep.png\">\n\n### マージリクエスト承認ポリシーで複数の異なる承認アクションをサポート\n\nSaaS：Ultimate\u003Cbr>\nSelf-Managed：Ultimate\n\nこれまでマージリクエスト承認ポリシーはポリシーごとに1つの承認ルールしかサポートしておらず、「OR」条件を用いて複数の承認者を指定する場合も1セットしか設定できませんでした。結果として、さまざまなロール、個々の承認者、または別々のグループから成る、階層化されたセキュリティ承認の実装は非常に困難でした。\n\n今回の更新により、マージリクエスト承認ポリシーごとに最大5つの承認ルールを作成できるようになったことから、より柔軟で堅牢な承認ポリシーの設定が可能になりました。ルールごとに異なる承認者やルールを指定でき、各ルールは個別に評価されます。たとえば、セキュリティチームは、グループAとグループBからそれぞれ1名の承認者、もしくは特定のロールと特定のグループから1名の承認者を必要とするような複雑な承認ワークフローを定義できます。これにより、機密性の高いワークフローにおけるコンプライアンスと制御の強化が実現できます。\n\nこの機能強化の使用例を以下にご紹介します。\n\n* __異なるロールによる承認__：デベロッパーロールおよびメンテナーロールによる承認  \n* __ロールおよびグループによる承認__：デベロッパーまたはメンテナーロールによる承認と、セキュリティグループのメンバーによる承認  \n* __異なるグループによる承認__： Pythonエキスパートグループのメンバーによる承認と、セキュリティグループのメンバーによる承認\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/merge_request_approval_policies.html)\n\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/12319)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/multiple-distinc-approvers-nov-19.png\">\n\n### GitLab MLOps Pythonクライアント（ベータ版）\n\nSaaS：Free、Premium、Ultimate\u003Cbr>\nSelf-Managed：Free、Premium、Ultimate\n\nデータサイエンティストや機械学習エンジニアは主に作業環境としてPythonを使用していますが、機械学習ワークフローをGitLabのMLOps機能と統合するには、頭の切り替えが必要となるだけでなく、GitLabのAPI構造を理解しなければなりません。結果として、開発プロセスに摩擦が生じ、実験の追跡、モデルアーティファクトの管理、チームメンバーとのコラボレーションの速度に悪影響を及ぼす可能性があります。\n\n新しいGitLab MLOps Pythonクライアントでは、GitLabのMLOps機能にシームレスにアクセスできる、Pythonに適したインターフェイスを利用できます。これにより、データサイエンティストは、Pythonスクリプトやノートブックから直接GitLabの[実験追跡](https://docs.gitlab.com/ee/user/project/ml/experiment_tracking/)機能や[モデルレジストリ](https://docs.gitlab.com/ee/user/project/ml/model_registry/)機能を利用できるようになりました。クライアントでは以下の機能を利用できます。\n\n* **GitLab内での実験の追跡**：GitLab内で行われる機械学習実験を簡単に追跡できます。  \n* **モデルレジストリの統合**：GitLabのモデルレジストリでモデルの登録および管理ができます。  \n* **実験の管理**：クライアントから直接実験を作成し、管理できます。  \n* **追跡の実行**：トレーニングの実行とモニタリングが簡単にできます。\n\nこの統合により、データサイエンティストはモデル開発に集中しながら、機械学習ライフサイクルのメタデータをGitLabに自動的に取り込むことが可能になりました。Pythonクライアントは既存の機械学習ワークフローとシームレスに連携し、設定は最小限で済むため、データサイエンスコミュニティにとってGitLabのMLOps機能がより身近な存在となります。\n\n幅広いPythonとデータサイエンスコミュニティのみなさまからのコントリビュートをお待ちしています。[プロジェクトのリポジトリ](https://gitlab.com/gitlab-org/modelops/mlops/gitlab-mlops)から、ぜひ直接フィードバックをお寄せください。\n\n[ドキュメント](https://gitlab.com/gitlab-org/modelops/mlops/gitlab-mlops)  \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/16193)\n\n### エピックの色をカスタマイズ可能\n\nSaaS：Premium、Ultimate\u003Cbr>\nSelf-Managed：Premium、Ultimate\n\n既存の値やカスタムのRGB値または16進コードを含む、拡張されたカラーオプションを使用して、エピックをより柔軟に分類できるようになりました。この視覚的なカスタマイズの強化により、エピックをスクワッド、会社のイニシアチブ、または階層レベルに簡単に関連付けることができ、ロードマップやエピックボードでの作業の優先順位付けや整理が楽になります。\n\n管理者は、[エピックの新しい外観](https://docs.gitlab.com/ee/user/group/epics/epic_work_items.html)を有効にする必要があります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/epics/manage_epics.html#epic-color)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509924)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/customizable_colors_for_epics.png\">\n\n### エピックのヘルスステータス\n\nSaaS：Ultimate\u003Cbr>\nSelf-Managed：Ultimate\n\nエピックのヘルスステータス機能が新たに追加され、プロジェクトの進捗状況を共有しやすくなりました。ステータスを「健全」「要注意」「危険」のいずれかに設定することで、エピックの健全性が可視化され素早く把握できるようになります。これにより、リスクを管理しつつ、プロジェクト全体のステータスを関係者と常に共有できるようになりました。\n\n管理者は、[エピックの新しい外観](https://docs.gitlab.com/ee/user/group/epics/epic_work_items.html)を有効にする必要があります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/epics/manage_epics.html#health-status.)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509922)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/epic_health_status.png\">\n\n### GitLab Pagesでのプライマリドメインへのリダイレクト\n\nSaaS：Free、Premium、Ultimate\u003Cbr>\nSelf-Managed：Free、Premium、Ultimate\n\nGitLab Pagesでプライマリドメインを設定し、カスタムドメインからのリクエストをすべてプライマリドメインに自動的にリダイレクトできるようになりました。訪問者がどのURLからサイトにアクセスしても、指定したドメインにリダイレクトされるため、SEOランキングを維持し、一貫したブランド体験を提供するのに役立ちます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/pages/#primary-domain)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15000)\n\n### エピックに費やした時間の追跡\n\nSaaS：Premium、Ultimate\u003Cbr>\nSelf-Managed：Premium、Ultimate\n\nエピック内で直接時間をトラッキングして、プロジェクトの時間管理をより細かくコントロールできるようになりました。この新機能を使用すると、プロジェクトに費やされた時間を細分化して記録できるため、スプリントやマイルストーンを進める中で、進捗をモニタリングし、スケジュールを遵守し、予算を管理するのに役立ちます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/time_tracking.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509930)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/epic_time_tracking.png\">\n\n### ロールを使用してプロジェクトメンバーをGitLabコードオーナーとして定義\n\nSaaS：Premium、Ultimate\u003Cbr>\nSelf-Managed：Premium、Ultimate\n\nロールをGitLabコードオーナーとして`CODEOWNERS`ファイルに設定できるようになりました。これにより、ロールベースの技能と承認をより効率的に管理できるようになりました。個別のユーザーを列挙したり、グループを作成したりする代わりに、以下の構文を使用できます。\n\n* `@@developers`：デベロッパーロールが付与されたすべてのユーザーを参照  \n* `@@maintainers`：メンテナーロールが付与されたすべてのユーザーを参照  \n* `@@owners`：オーナーロールが付与されたすべてのユーザーを参照\n\nたとえば、`* @@maintainers`を追加すると、リポジトリにおけるすべての変更に対して、メンテナーによる承認が必要になります。  \nこれにより、プロジェクトにおいてチームメンバーの参加、離脱、またはロールの変更があった場合でも、GitLabコードオーナーを簡単に管理できます。GitLabが指定されたロールを持つすべてのユーザーを自動的に`CODEOWNERS`ファイルに反映するため、手動でファイルを更新することなく、常に最新の状態を維持できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/codeowners/reference.html#add-a-role-as-a-code-owner)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/282438)\n\n### 保護パッケージを使用して依存関係を守る\n\nSaaS：Free、Premium、Ultimate\u003Cbr>\nSelf-Managed：Free、Premium、Ultimate\n\n本リリースでは、PyPIの保護パッケージが新たにサポートされました。こちらは、GitLabパッケージレジストリのセキュリティと安定性を強化することを目的として設計された新機能です。急速に変化するソフトウェア開発の現場では、パッケージを誤って変更または削除してしまった場合、開発プロセス全体に混乱が生じる可能性があります。保護パッケージを使用すると、意図せぬ変更を防いで最も重要な依存関係を保護できます。\n\nGitLab 17.8からは、保護ルールを作成してPyPIパッケージを保護します。保護ルールの条件に合致したパッケージは、指定されたユーザーのみが更新または削除できます。この機能を使用すると、手動による監視の必要性を減らすことにより、意図せぬ変更の防止、規制要件に関連するコンプライアンスの強化、ワークフローの効率化を実現できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/packages/package_registry/package_protection_rules.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/323971)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/protected_pypi_packages.png\">\n\n### Kubernetes用ダッシュボードで一時停止中のFluxの調整を表示\n\nSaaS：Free、Premium、Ultimate\u003Cbr>\nSelf-Managed：Free、Premium、Ultimate\n\nこれまではKubernetes用ダッシュボードでFluxの調整（Flux reconciliation）を一時停止しても、一時停止状態であることを示す明確な指標がありませんでした。本リリースでは、既存のステータス指標に新たに「一時停止」が追加され、Fluxの調整が中断された状態であることが明示されるようになり、デプロイの状態に関する可視性が向上しました。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/501339)\n\n### Webhookイベントのサポート対象に脆弱性を追加\n\nSaaS：Ultimate\u003Cbr>\nSelf-Managed：Ultimate\n\n脆弱性に関連するアクションに対してイベントを生成するWebhookインテグレーションが導入されました。これにより、自動化や外部リソースとの統合が可能になります。たとえば、脆弱性の発生時や脆弱性ステータスの変更時にイベントが生成されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html#vulnerability-events)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/366770)\n\n\u003Cimg src=\"https://about.gitlab.com/images/unreleased/vulnerabiltiy-webhook.jpg\">\n\n### 脆弱性が修正されたコミットの特定\n\nSaaS：Ultimate\u003Cbr>\nSelf-Managed：Ultimate\n\nこれまでは、脆弱性が検出されなくなった場合に、その脆弱性がいつ、どこで修正されたかを確認できませんでした。本リリースより、脆弱性が修正されたコミットSHAへのリンクが表示されるようになったため、トレーサビリティが向上したほか、修正プロセスに関する詳細なインサイトも取得可能になりました。これにより、セキュリティチームと開発チームが連携してより効果的に脆弱性を管理しやすくなりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#vulnerability-resolution)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/372799)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_8/commit-link-vulnerability.png\">\n\n### スケジュールされたスキャン実行パイプラインの並行処理を管理\n\nSaaS：Premium、Ultimate\u003Cbr>\nSelf-Managed：Ultimate\n\nグローバルスケジュール型スキャン実行ポリシーのスケーラビリティを向上させるために、スキャン実行ポリシーに時間枠を設定する機能が新たに導入されました。`time_window`プロパティでポリシーによって新規スケジュールが作成および実行される期間を定義し、最適なパフォーマンスを確保します。\n\n新たに追加されたプロパティを使用するには、YAMLモードを使用してポリシーを更新し、[`time_window`スキーマ](https://docs.gitlab.com/ee/user/application_security/policies/scan_execution_policies.html#time_window-schema)に従います。スケジュールが実行される時間枠は秒単位で指定できます。たとえば、24時間の時間枠を設定する場合は`86400`と指定します。次に、`distribution: random`フィールドおよび値を指定すると、定義された時間枠でスケジュールがランダムに実行されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/scan_execution_policies.html#concurrency-control)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13997)\n\n### コンプライアンスセンターの「フレームワーク」レポートタブのUIパフォーマンスをスケーリング\n\nSaaS：Premium、Ultimate\u003Cbr>\nSelf-Managed：Premium、Ultimate\n\nGitLab 17.8では、バックエンドを改良し、コンプライアンスセンターで一貫した応答性と高速な動作を実現しました。たとえコンプライアンスセンターの「**フレームワーク**」レポートタブに数千件のコンプライアンスフレームワークがある場合でも、この性能は維持されます。\n\nさらに、より詳細な情報を求めて「**フレームワーク**」タブで任意のフレームワークをクリックすると、右側のポップアップメニューに、そのフレームワークに関連付けられているプロジェクト情報が1,000件まで表示されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/compliance_center/compliance_frameworks_report.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/477394)\n\n### グループのプロジェクト作成権限にオーナーロールを追加\n\nSaaS：Free、Premium、Ultimate\u003Cbr>\nSelf-Managed：Free、Premium、Ultimate\n\n**プロジェクトの作成許可**設定を使用すると、プロジェクトを作成できる対象者をグループ内の特定のロールに制限できます。本リリースから、オーナーロールがオプションに追加され、新規プロジェクトを作成できる対象者をグループに対してオーナーロールを持つユーザーに制限できるようになりました。このロールは、これまで選択オプションに含まれていませんでした。\n\nこの場を借りて、コミュニティにコントリビュートしてくださった[@yasuk](https://gitlab.com/yasuk)さんに感謝申し上げます！\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/index.html#specify-who-can-add-projects-to-a-group)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/354355)\n\n### 削除予定のサブグループとプロジェクトの表示\n\nSaaS：Premium、Ultimate\u003Cbr>\nSelf-Managed：Premium、Ultimate\n\nグループを削除対象としてマークする際は、影響を受けるすべてのサブグループとプロジェクトを確認する必要があります。これまでは削除対象としてマークされたグループのみに「削除の保留中」ラベルが表示されており、そのサブグループとプロジェクトには表示されていなかったため、削除予定のコンテンツを特定するのは大変でした。\n\n本リリースから、グループが削除対象としてマークされると、そのすべてのサブグループとプロジェクトに「削除の保留中」ラベルが表示されるようになりました。これにより、可視性が向上し、グループ階層全体でアクティブなコンテンツと削除予定のコンテンツを素早く見分けることができます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/#view-groups-pending-deletion)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/457718)\n\n## 実験的な機能\n\n### VS CodeでのSASTスキャン\n\nリアルタイムのGitLab SASTスキャンが、実験的な機能としてVS Codeで利用できるようになりました。\n\nプロジェクトファイルをコミットまたはプッシュする前にVS Codeで直接スキャンできるため、セキュリティの脆弱性をこれまでよりも早期に発見して修正できます。SASTスキャンのサイドパネルには、スキャン結果が表示され、コードに変更を加えると更新されます。脆弱性の結果にカーソルを合わせると、詳細な説明が表示されます。またはエディタウィンドウを開いて詳細を確認することも可能です。この機能の利用を開始するには、[こちらのドキュメント](https://docs.gitlab.com/ee/editor_extensions/visual_studio_code/#perform-sast-scanning)をご参照ください。\n\nこの機能は、UltimateプランでGitLab.comをご使用のお客様にご利用いただけます。ぜひ[フィードバック](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/issues/1775)をお寄せください。今後段階的に、本機能を改善していく予定です。\n\nデモをご覧になりたい場合は、[VS CodeでのSASTスキャンの動画](https://www.youtube.com/watch?v=KOYdVdA6ZCs)をご視聴ください。\n\n## バグ修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabでは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームをご利用のすべての方々に、スムーズでシームレスな体験をお届けすることを約束します。\n\n以下のリンクをクリックして、17.8のバグ修正、パフォーマンスの強化、UIの改善についてすべてご覧ください。\n\n* [バグ修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.8)  \n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.8)  \n* [UIの改善](https://papercuts.gitlab.com/?milestone=17.8)\n\n*監修：知念 梨果 [@rikachinen](https://gitlab.com/rikachinen)* \u003Cbr>\n*（GitLab合同会社 カスタマーサクセス本部 カスタマーサクセスエンジニア）*\n\n### 過去の日本語リリース情報\n\n### 過去の日本語リリース情報\n\n- [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n- [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n- [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)  \n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)  \n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)  \n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)  \n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)  \n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)\n",[672,671,14],{"slug":1087,"featured":92,"template":679},"gitlab-17-8-release","content:ja-jp:blog:gitlab-17-8-release.yml","Gitlab 17 8 Release","ja-jp/blog/gitlab-17-8-release.yml","ja-jp/blog/gitlab-17-8-release",{"_path":1093,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1094,"content":1100,"config":1106,"_id":1108,"_type":16,"title":1109,"_source":18,"_file":1110,"_stem":1111,"_extension":21},"/ja-jp/blog/getting-started-with-gitlab-how-to-manage-users",{"title":1095,"description":1096,"ogTitle":1095,"ogDescription":1096,"noIndex":6,"ogImage":1097,"ogUrl":1098,"ogSiteName":770,"ogType":771,"canonicalUrls":1098,"schema":1099},"GitLab入門：ユーザーの管理方法","グループ、ロール、権限を活用してユーザーを管理する方法と、プロジェクトへのアクセスを適切に設定して安全なコラボレーションを実現するための手順をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097273/Blog/Hero%20Images/Blog/Hero%20Images/blog-getting-started-with-gitlab-banner-0497-option4-fy25_cFwd8DYFLekdnOLmbbChp_1750097273817.png","https://about.gitlab.com/blog/getting-started-with-gitlab-how-to-manage-users","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab入門：ユーザーの管理方法\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Abubakar Siddiq Ango\"}],\n        \"datePublished\": \"2025-01-14\",\n      }",{"title":1095,"description":1096,"authors":1101,"heroImage":1097,"date":1102,"body":1103,"category":14,"tags":1104,"updatedDate":1105},[1063],"2025-01-14","*「GitLab入門」シリーズへようこそ！このシリーズでは、GitLab DevSecOpsプラットフォームを初めて使う方に向けて、基本的な使い方を解説します。*\n\n安全でコンプライアンスに準拠したコラボレーション環境を作るための第一歩は、ユーザー管理です。このチュートリアルでは、プロジェクトメンバーの設定、ロールと権限の割り当て、グループとサブグループの作成方法についてご説明します。\n\n注：このチュートリアルに沿って進めるには、GitLab.comまたは組織のSelf-ManagedインスタンスでGitLabアカウントをお持ちである必要があります。サポートが必要な場合は、[GitLab University](https://university.gitlab.com/)の基礎コンテンツをご覧ください。\n\nそれでは、始めましょう。\n\nGitLabユーザーを作成すると、そのユーザーは[非公開プロジェクト、公開プロジェクト、および内部プロジェクト](https://docs.gitlab.com/user/public_access/)にのみアクセスできます。このチュートリアルでは、プロジェクトは機密扱いとし、招待されたメンバーだけが各権限設定に応じてアクセスできるようにします。そのためには、ユーザーを[プロジェクトのメンバー](https://docs.gitlab.com/ee/user/project/members/)として招待する必要があります。\n\n## プロジェクトメンバー\n\n![プロジェクトメンバーの画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097278/Blog/Content%20Images/Blog/Content%20Images/image1_aHR0cHM6_1750097278487.png)\nGitLabユーザーをプロジェクトに招待し、[ロールを割り当てる](https://docs.gitlab.com/ee/user/permissions.html)ことで、そのユーザーがプロジェクト内で実行できる操作が決定します。プロジェクトのオーナーは、他のユーザーをメンテナーに任命して、管理タスクを委任できます。メンテナーは、プロジェクトの削除、アーカイブ、転送などの変更を除き、オーナーとほぼ同じ操作を行うことができます。\n\n![メンバー招待画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097278/Blog/Content%20Images/Blog/Content%20Images/image2_aHR0cHM6_1750097278487.png)\n\nプロジェクトの[メンテナー](https://docs.gitlab.com/ee/user/permissions.html#roles)は、他のメンバーをデベロッパーとして招待できます。デベロッパーは、ソフトウェアの作成、ビルド、デプロイに必要なすべての機能にアクセスできます。デベロッパーではないものの、プロジェクト管理へのアクセスが必要なユーザーには、[プランナー](https://about.gitlab.com/blog/introducing-gitlabs-new-planner-role-for-agile-planning-teams/)、レポーター、ゲストなどのロールを割り当てて招待できます。これらのロールには、それぞれ異なる権限レベルが設定され、[保護ブランチ](https://docs.gitlab.com/ee/user/project/repository/branches/protected.html)に対する変更権限を誰が持つかを決定するためにも使用されます。\n\n請負業者と作業している場合や、ユーザー権限に有効期限を設定する必要がある場合は、期限日を設定することで、指定日以降にユーザーがプロジェクトへのアクセス権を失うようにできます。また、プロジェクトメンバーは、その[メンバーシップの種類](https://docs.gitlab.com/ee/user/project/members/#membership-types)に基づいて「直接メンバー」と「間接メンバー」に分類されます。直接メンバーはプロジェクトに直接招待されたユーザーであり、間接メンバーは通常、プロジェクトが属する[GitLabのグループ](https://docs.gitlab.com/ee/user/group/)から継承されたメンバーです。\n\n次に、グループメンバーシップについて見ていきましょう。\n\n## グループメンバーシップ\n\nGitLabのグループは、GitLabインスタンスのルートに作成されるトップレベルのコンポーネントとして使用できます。たとえば、[gitlab.com/gitlab-org](http://gitlab.com/gitlab-org)は親グループとして機能し、この親グループの下に[gitlab.com/gitlab-org/charts](http://gitlab.com/gitlab-org/charts)のようなサブグループを作成できます。グループは、プロジェクトが1つしかない場合でも便利です。\n\nグループは、以下の目的で使用できます。\n\n- 類似または関連するプロジェクトを整理する\n- ユーザーをグループ化し、チームの調整をしやすくする\n\n個々のユーザーではなくグループ単位で管理する手順を説明します。チームを各グループにまとめた上で、[グループをプロジェクトに招待](https://docs.gitlab.com/user/project/members/sharing_projects_groups/)します。チーム全体に特定のロールを割り当てます。たとえば、チームのデベロッパーたちには`dev`グループ、プロジェクトマネージャーには`pm`グループ、チームリードには`leads`グループを設定します。グループを招待する際に、`dev`にはデベロッパーロールを、`pm`にはプランナーロールを、`leads`にはメンテナーロールを割り当てます。\n\n![グループ招待画面](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097279/Blog/Content%20Images/Blog/Content%20Images/image3_aHR0cHM6_1750097278488.png)\n\n各グループでは、プロジェクト権限を更新することなく、メンバーを追加または削除できます。これは、チームが複数のプロジェクトを管理するようになった場合に特に便利です。しかし、グループを使ったコラボレーションでは、[ベストプラクティスを守る](https://docs.gitlab.com/ee/user/project/members/sharing_projects_groups.html#setting-up-a-group-for-collaboration)ことが重要です。\n\n別の利点として、ユーザーをグループで整理しておくと、イシュー、マージリクエスト、コメント内でグループ全体を[メンション](https://docs.gitlab.com/ee/user/discussions/#mentions)できます。これにより、チーム全体の情報共有が簡単になります。\n\n### サブグループの作成\n\n[サブグループ](https://docs.gitlab.com/ee/user/group/subgroups/)は、グループ内のユーザーをより細かく整理するために使用でき、最大20階層まで追加できます。サブグループ内のユーザーは、親グループで与えられた権限を継承します。サブグループ内のユーザーに、そのユーザーが継承した権限よりも上位のロールを付与するには、新たなロールを指定して[サブグループに招待](https://docs.gitlab.com/ee/user/group/subgroups/#override-ancestor-group-membership)する必要があります。注：サブグループ内で権限を下げることはできません。\n\n### グループの管理\n\nグループのオーナーには、グループ内でユーザーが実行できる操作を設定するためのさまざまな管理オプションがあります。たとえば、ユーザーがグループへのアクセスをリクエストする方法の設定、[グループメンション](https://docs.gitlab.com/ee/user/group/manage.html#disable-group-mentions)の有効化／無効化、[アクセス制限](https://docs.gitlab.com/ee/user/group/manage.html#turn-on-restricted-access)、および[ユーザー管理](https://docs.gitlab.com/ee/user/group/moderate_users.html)などが含まれます。また、この記事の公開時点ではまだ開発中ですが、非アクティブなユーザーを最短90日、最長5年後に[自動的に削除](https://docs.gitlab.com/ee/user/group/moderate_users.html#automatically-remove-dormant-members)する機能が追加される予定です。これにより、グループが整理された状態を保ち、ライセンスシートをより効果的に管理できるようになります。\n\n## もっと詳しく\n\nGitLabでのユーザー管理の方法は、ユースケースによって異なります。GitLabでは、規模が大きく、高度なワークフローを必要とする組織向けに、[エンタープライズユーザーを管理](https://docs.gitlab.com/ee/user/enterprise_user/index.html)するための高度な機能を用意しています。他にも、[組織を管理](https://docs.gitlab.com/ee/topics/set_up_organization.html)するためのさまざまなオプションがあります。[GitLab Ultimate](https://about.gitlab.com/ja-jp/pricing/ultimate/)を利用すれば、より細かい管理機能やコンプライアンス機能を活用できます。\n\n*次回の「GitLab入門」シリーズは、[プロジェクトをGitLabにインポートする方法（英語。和訳準備中）](https://about.gitlab.com/blog/getting-started-with-gitlab-how-to-import-your-projects-to-gitlab/)について解説します*\n\n> #### もっとGitLabについて知りたい場合は、[GitLabユニバーシティのコースに登録](https://university.gitlab.com/)するか、[GitLab Ultimateの無料トライアル](https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com%2F)を今すぐお試しください。\n\n*監修：知念 梨果 [@rikachinen](https://gitlab.com/rikachinen)* \u003Cbr>\n*（GitLab合同会社 カスタマーサクセス本部 カスタマーサクセスエンジニア）*\n",[781,805,802,944,14],"2025-05-14",{"slug":1107,"featured":92,"template":679},"getting-started-with-gitlab-how-to-manage-users","content:ja-jp:blog:getting-started-with-gitlab-how-to-manage-users.yml","Getting Started With Gitlab How To Manage Users","ja-jp/blog/getting-started-with-gitlab-how-to-manage-users.yml","ja-jp/blog/getting-started-with-gitlab-how-to-manage-users",{"_path":1113,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1114,"content":1120,"config":1126,"_id":1128,"_type":16,"title":1129,"_source":18,"_file":1130,"_stem":1131,"_extension":21},"/ja-jp/blog/gitlab-17-7-release",{"title":1115,"description":1116,"ogTitle":1115,"ogDescription":1116,"noIndex":6,"ogImage":1117,"ogUrl":1118,"ogSiteName":770,"ogType":771,"canonicalUrls":1118,"schema":1119},"GitLab 17.7リリース","GitLab 17.7でリリースした最新機能をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662186/Blog/Hero%20Images/product-gl17-blog-release-cover-17-7-0093-1800x945-fy25.png","https://about.gitlab.com/blog/gitlab-17-7-release","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 17.7リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2024-12-19\",\n      }",{"title":1115,"description":1116,"authors":1121,"heroImage":1117,"date":1122,"body":1123,"category":14,"tags":1124,"updatedDate":1125},[676],"2024-12-19","**プランナーユーザーロールを新たに追加したGitLab 17.7をリリース**\n\nこのたび、GitLab 17.7のリリースを発表しました。今回のリリースでは、プランナーという新たなユーザーロール、脆弱性の自動解決ポリシー、管理者が制御可能なインスタンスのインテグレーションの許可リスト、UIでのアクセストークンローテーションなどが追加されました！\n\nこれらの機能は、今回のリリースに含まれる230件以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLab 17.7には、GitLabコミュニティのユーザーから138件ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。  \n\n来月のリリースで予定されている内容を先取りするには、17.8リリースのキックオフビデオも視聴できる[今後のリリースページ](https://about.gitlab.com/direction/kickoff/)をご覧ください。\n\n> [GitLab 17.7のリリースでは、プランナーというユーザーロールが新たに追加されました。クリックしてSNSで共有しましょう！](http://twitter.com/share?text=GitLab+17.7+released+with+new+Planner+user+role&url=https://about.gitlab.com/releases/2024/12/19/gitlab-17-7-released/&hashtags=)\n\n## 今月のMost Valuable Person [MVP](https://about.gitlab.com/community/mvp/)は[Vedant Jain](https://gitlab.com/vedant-jain03)さんが受賞\n\nMVPには、誰もが[GitLabコミュニティのコントリビューターを推薦](https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490)できます。現在の候補者を応援したり、他の誰かをノミネートしてみませんか。🙌\n\nVedantさんは、コミュニティのコントリビューターとして活躍されていて、コントリビュートに対する積極的なアプローチ、デリバリーへのコミットメント、そしてコラボレーションスキルで知られています。フィードバックを受け入れ、それを作業に取り入れ、必要な場合は支援を求めることに長けていて、コントリビュートを完了させるだけでなく、常にGitLabの基準を満たしてくれています。\n\nVedantさんのコントリビュートには、[抽象化された作業アイテム属性を単一のリスト／ボードにまとめた](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/172191)プロジェクト管理プロセスの効率化、[作業アイテムのメタデータの並べ替え](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/173033)、[作業アイテムウィジェットの折りたたみ状態を記憶する](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171228)機能の開発などがあります。また、UIのドキュメントへのリンクを修正し（[1](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170633)、[2](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170534)）、製品全体のユーザーエクスペリエンスを改善する重要な取り組みの一環として、テクニカルライティングチームを支援しました。\n\nGitLabのプロダクトプランニング担当シニアプロダクトマネージャーである[Amanda Rueda](https://gitlab.com/amandarueda)は、Vedantさんを推薦し、彼の積極的でコミュニティ指向の考え方について次のように述べました。「Vedantさんは業務を通じて、ユーザーのニーズに対応するだけでなく、コントリビュートにより安定性と信頼性をより一層高めたGitLab環境をともに作り上げてくれています。バグの修正、ユーザビリティの改善、メンテナンスの取り組みにコントリビュートすることで、製品の全体的な品質を向上させる上で重要な役割を担っています。Vedantさんの積極的なアプローチとグループの枠にとらわれないコントリビュートは、イテレーション、顧客とのコラボレーション、継続的な改善というGitLabのコアバリューを体現しており、彼はコミュニティの中でも傑出したコントリビューターと言えます」\n\n今回の受賞に関して、Vedantさんは次のように述べています。「ご協力いただいたみなさんのおかげです。良い影響を与えることができたことにとても感謝しており、これからもより多くのコントリビュートをしていきたいと思います」\n\nVedantさんは、最新のデータチーム向けのアクティブなメタデータプラットフォームであるAtlanのフロントエンドエンジニアであり、Google Summer of Code（GSOC）2024のメンターも務めています。\n\nVedantさんのコントリビュートを始め、GitLabにコントリビュートしてくださっているオープンソースコミュニティのみなさまに心より感謝します！\n\n## GitLab 17.7でリリースされた主な改善点\n\n### プランナーという新たなユーザーロール\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nプランナーというロールが新たに導入されました。これにより、[権限](https://docs.gitlab.com/ee/user/permissions.html)を過剰に付与することなく、エピック、ロードマップ、Kanbanボードなどのアジャイルプランニングツールへのアクセスをカスタマイズできます。この変更により、ワークフローを安全に保ち、最小権限の原則を守りながら、コラボレーションをより効果的に行うことができます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/permissions.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/482733)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_7/new_planner_user_role.png\">\n\n### インスタンス管理者がどのインテグレーションを有効にするか設定可能に \nSaaS: -  \nSelf-Managed: Ultimate\n\nインスタンス管理者は、GitLabインスタンスで有効にするインテグレーションを許可リストで設定できるようになりました。空欄の許可リストを設定した場合、インスタンス上でインテグレーションは許可されません。許可リストの設定後、デフォルトでは新しいGitLabインテグレーションは許可リストに含まれません。\n\n以前に有効にしていたインテグレーションを後から許可リストの設定によってブロックした場合、そのインテグレーションは無効になります。これらのインテグレーションを再度許可すると、既存の設定で改めて有効になります。\n\n[ドキュメント  ](https://docs.gitlab.com/ee/administration/settings/project_integration_management.html#integration-allowlist)\n\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/500610)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_7/integrations_allowlist.png\">\n\n### Direct Transfer によるユーザーのコントリビューションとメンバーシップの新たなマッピングのサポート\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\n[Direct Transfer](https://docs.gitlab.com/ee/user/group/import/index.html)（直接転送）によりGitLabインスタンス間を移行する場合に、ユーザーのコントリビューションとメンバーシップの新たなマッピング方法を使用できるようになりました。この機能により、インポートプロセスを管理するユーザーと、コントリビューションの再割り当てを受けるユーザーの双方に対する柔軟性と制御性が向上しました。新しいマッピング方法による変更点は以下です。\n\n* インポートが完了した後、移行先のインスタンスの既存のユーザーにメンバーシップとコントリビュートを再割り当てできます。インポートするメンバーシップとコントリビュートはすべて、まずはプレースホルダーユーザーにマッピングされます。すべてのコントリビュートは、移行先のインスタンスで再割り当てするまで、プレースホルダーユーザーに関連付けられて表示されます。  \n* ソースインスタンスと移行先のインスタンスに異なるメールアドレスを持つユーザーのメンバーシップとコントリビュートをマッピングします。\n\n移行先のインスタンスのユーザーにコントリビュートを再割り当てすると、ユーザーは再割り当てを承認または拒否できます。  \n詳細については、[ユーザーのコントリビュートとメンバーシップのマッピングによる移行の効率化](https://about.gitlab.com/blog/streamline-migrations-with-user-contribution-and-membership-mapping/)（英語）を参照してください。フィードバックを投稿するには、[イシュー502565](https://gitlab.com/gitlab-org/gitlab/-/issues/502565)にコメントを追加してください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/import/#user-contribution-and-membership-mapping)  \n[エピック](https://gitlab.com/gitlab-org/gitlab/-/issues/478054)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_7/user_contributions_mapping.png\">\n\n### 後続のスキャンで見つからない場合、脆弱性を自動的に解決\n\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\nGitLabの[セキュリティスキャンツール](https://docs.gitlab.com/ee/user/application_security/#security-scanning-tools)は、アプリケーションコードの既知の脆弱性と潜在的な弱点を特定するのに役立ちます。フィーチャーブランチのスキャンを行うと、新たな弱点や脆弱性が検出されるため、マージする前に修正できます。プロジェクトのデフォルトブランチにすでに脆弱性がある場合、フィーチャーブランチで修正しておけば、次のデフォルトブランチスキャンの実行時に脆弱性が検出されなくなります。どの脆弱性が検出されなくなったかを把握しておくことは有益であるものの、各脆弱性をクローズするには、それぞれ手動で解決済みとしてマークする必要があります。解決すべき脆弱性が多数ある場合、新しいアクティビティフィルターやステータスの一括変更を使用したとしても、時間がかかることがあります。\n\n本リリースでは、自動スキャンによって検出されなくなった脆弱性を自動的に解決済みに設定したいユーザーのニーズに応えて、新しいポリシータイプである*脆弱性管理ポリシー*を導入します。手順は簡単で、新たに追加された自動解決オプションを使用して新規ポリシーを設定し、適切なプロジェクトに適用するだけです。特定の重大度の脆弱性のみ、または特定のセキュリティスキャナーで検出された脆弱性のみを自動解決するように、ポリシーを設定することも可能です。設定が完了すると、プロジェクトのデフォルトブランチのスキャンが次回行われた際に検出されなかった既存の脆弱性は解決済みとしてマークされます。このアクションにより、脆弱性の情報が更新され、アクティビティノート、アクション発生時のタイムスタンプ、および脆弱性が削除されると判断されたパイプラインが記録されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/vulnerability_management_policy.html)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/5708)  \n\n\u003Cimg src=\"https://about.gitlab.com/images/17_7/auto-resolve-when-not-found-in-subsequent-scan.png\">\n\n### パーソナル、プロジェクト、グループアクセストークンをUIからローテーション可能に\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nUIを使用して、パーソナルアクセストークン、プロジェクトアクセストークン、グループアクセストークンをローテーションできるようになりました。これまでは、UIからトークンを更新するにはAPIを使用する必要がありました。\n\nこの場を借りて、コントリビュートしてくれた[shangsuru](https://gitlab.com/shangsuru)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#revoke-or-rotate-a-personal-access-token)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/241523)\n\n\u003Ciframe width=\"478\" height=\"269\" src=\"https://www.youtube.com/embed/YqK2CF655OE\" title=\"Revoke and Renew a GitLab personal access token (PAT) in the UI\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### CI/CDコンポーネントの使用状況をプロジェクトをまたいで追跡可能に\n\nSaaS: Premium、Ultimate  \nSelf-Managed: Premium、Ultimate\n\n中心となるDevOpsチームは多くの場合、パイプライン全体でCI/CDコンポーネントが使用されている場所を追跡して、より適切に管理し、最適化する必要があります。コンポーネントの利用状況を可視化する方法がなければ、古いコンポーネントの使用の特定、採用率の把握、コンポーネントのライフサイクルのサポートなどを行うのは困難です。\n\nこのようなニーズに応えるために、新たにGraphQLクエリを追加し、DevOpsチームが組織のパイプライン全体でコンポーネントが使用されているプロジェクトのリストを表示できるようにしました。この機能により、DevOpsチームは可視化に基づいた分析結果を活用して生産性を向上させ、より良い意思決定を行うことができます。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/graphql/reference/index.html#cicatalogresourcecomponentusage)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/466575)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_7/catalog.png\">\n\n### Linux Armでホストされる小規模Runnerが全プランで利用可能に\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: -\n\n本リリースから、GitLab.com向けにLinux Armでホストされる小規模Runnerを全プランでご利用いただけるようになりました。この2 vCPU Arm Runnerは、GitLab CI/CDと完全に統合されており、Armアーキテクチャ上でネイティブにアプリケーションをビルドし、テストすることができます。\n\n当社は、業界最速のCI/CDビルド速度を実現できるよう尽力しており、みなさまのチームがフィードバックサイクルのさらなる短縮に成功し、最終的にソフトウェアをより迅速に提供できるようになることを願っております。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/runners/hosted_runners/linux.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/501423)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_7/runner_arm.png\">  \n\n## GitLab 17.7のリリースに含まれるその他の改善点\n\n### お好みのテキストエディタをデフォルトに設定\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\n本バージョンでは、お好きな方法で編集を行えるようにするために、デフォルトのテキストエディタを設定できるようになりました。この変更により、リッチテキストエディタ、プレーンテキストエディタ、またはデフォルトなしを選択できるようになり、コンテンツの作成方法と編集方法の幅が拡がりました。\n\n今回のアップデートにより、エディタインターフェイスを個々の好みやチームの標準に合わせられるようになり、よりスムーズなワークフローを実現できます。この機能強化でも、GitLabは従来どおり、すべてのユーザーを考慮した使いやすさ、そしてカスタマイズ性を優先しています。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/preferences.html#set-the-default-text-editor)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/423104)\n\n### GitLab Duo Chatの新しい`/help`コマンド\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise  \nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nGitLab Duo Chatの様々な強力な機能を見つけましょう！チャットメッセージフィールドに「`/help`」と入力するだけで、Duo Chatで利用可能な機能をすべて確認できるようになりました。\n\nぜひこの新しいコマンドも試してみて、Duo Chatを使用することでどのように作業をよりスムーズに効率化できるかご確認ください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/gitlab_duo_chat/examples.html#gitlab-duo-chat-slash-commands)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/462122)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_7/new_help_command_in_gitlab_duo_chat.png\">\n\n### CI/CDジョブからネームスペースとFluxリソースパスを設定可能に\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nKubernetes用ダッシュボードを使用するには、環境設定からKubernetesとの接続用エージェントを選択し、必要に応じてReconciliationのステータスを追跡するために、ネームスペースとFluxリソースを設定する必要があります。GitLab 17.6では、CI/CD設定でエージェントの指定が可能になりました。ただし、ネームスペースとFluxリソースを設定するには、引き続きUIを使用するか、APIコールを行う必要がありました。17.7では、`environment.kubernetes.namespace`と`environment.kubernetes.flux_resource_path`を選択したCI/CD構文を使用してダッシュボードの設定をすべて行えるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/500164)\n\n### KEVによる効率的なリスクの優先順位付け  \nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\nGitLab 17.7では、悪用が確認された既知の脆弱性（KEV）カタログのサポートを追加しました。[KEVカタログ](https://www.cisa.gov/known-exploited-vulnerabilities-catalog)（英語）は、実際に悪用された共通脆弱性識別子（CVE）のリストがまとめられたもので、米国サイバーセキュリティ・社会基盤安全保障庁（CISA）によって管理されています。KEVを活用すれば、スキャン結果の優先順位付けを改善できるほか、脆弱性によって環境に生じうる影響を評価できます。\n\nこのデータは、GraphQLを介してコンポジション解析ユーザーが利用できます。このデータをGitLab UIに表示できるようにする[作業が計画されて](https://gitlab.com/gitlab-org/gitlab/-/issues/427441)います。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/graphql/reference/#cveenrichmenttype)  \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/11912)\n\n### 高度なSASTのためのコードフロービューの表示場所を拡大\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\n脆弱性が表示されている場所であればどこでも、高度なSASTの[コードフロービュー](https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html#vulnerability-code-flow)を利用できるようになりました。以下はその一例です。\n\n* [脆弱性レポート](https://docs.gitlab.com/ee/user/application_security/vulnerability_report/)  \n* [マージリクエストのセキュリティウィジェット](https://docs.gitlab.com/ee/user/application_security/sast/#merge-request-widget)  \n* [パイプラインセキュリティレポート](https://docs.gitlab.com/ee/user/application_security/vulnerability_report/pipeline.html)  \n* [マージリクエスト変更ビュー](https://docs.gitlab.com/ee/user/application_security/sast/#merge-request-changes-view)\n\nGitLab.comでは、新しいビューが有効になっています。GitLab Self-Managedでは、新しいビューはデフォルトでGitLab 17.7（MR変更ビュー）とGitLab 17.6（他のすべてのビュー）から有効になっています。サポートされているバージョンと機能フラグの詳細については、[コードフロー機能の可用性](https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html#code-flow-feature-availability)を参照してください。\n\n高度なSASTの詳細については、[本機能の一般提供の発表に関するブログ記事](https://about.gitlab.com/blog/gitlab-advanced-sast-is-now-generally-available)（英語）をご覧ください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html#vulnerability-code-flow)  \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/13499)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_7/ast-advanced-sast-code-flow.png\">\n\n### トークンの有効期限の通知機能の強化\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nこれまでは、トークンの有効期限に関するメール通知は、有効期限が切れる7日前にのみ送信されていましたが、本リリースから30日前と60日前にも送信されるようになりました。通知の頻度増加および日付範囲の拡大により、ユーザーはトークンの有効期限をより認識しやすくなりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/security/tokens/)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/464040)\n\n### コンプライアンスセンターのナビゲーションと使いやすさを改善\nSaaS: Premium、Ultimate  \nSelf-Managed: Premium、Ultimate\n\nGitLabでは、グループとプロジェクトの両方で、コンプライアンスセンターのユーザーエクスペリエンスに対する重要な改善を反復的に行っています。  \nGitLab 17.7で行った主な改善は次の2点です。\n\n* コンプライアンスセンターの「**プロジェクト**」タブでグループによるフィルタリングが可能になりました。これにより、ユーザーはこれまでとは別の方法で、適切なプロジェクトとそのプロジェクトに設定されたコンプライアンスフレームワークを適用、絞り込み、検索できるようになりました。  \n* プロジェクトのコンプライアンスセンターに「**フレームワーク**」タブが追加されました。ユーザーはこのタブを使用して、特定のプロジェクトに設定されているコンプライアンスフレームワークを検索できます。\n\nなお、フレームワークの追加や編集は、プロジェクトではなくグループで行われます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/compliance_center/compliance_frameworks_report.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/499183)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/468399)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_7/navigation-and-usability-improvements-to-compliance-center.png\">\n\n### オムニバスの改善  \nSaaS: -  \nSelf-Managed: Free、Premium、Ultimate\n\nバグのため、GitLab 17.6以前のバージョンでのFIPS LinuxパッケージではシステムLibgcryptは使用されず、標準のLinuxパッケージにバンドルされているのと同じLibgcryptが使用されていました。\n\nこのイシューは、AmazonLinux 2を除くGitLab 17.7のすべてのFIPS Linuxパッケージで修正されています。AmazonLinux 2のLibgcryptバージョンは、FIPS LinuxパッケージにインストールされているGPGMEおよびGnuPGバージョンと互換性がありません。  \n\nAmazonLinux 2のFIPS Linuxパッケージでは、標準のLinuxパッケージにバンドルされているのと同じLibgcryptが引き続き使用されます。そうでない場合は、GPGMEとGnuPGをダウングレードする必要があります。\n\n[ドキュメント](https://docs.gitlab.com/omnibus/)\n\n### Unicode 15.1の絵文字サポート🦖🍋‍🟩🐦‍🔥\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\n17.7より前のバージョンでは、絵文字のサポートは古いUnicode標準に限定されていたため、一部の新しい絵文字は利用できませんでした。\n\nGitLab 17.7では、Unicode 15.1のサポートが導入され、最新の絵文字が追加されました。これにより、ティラノサウルス🦖、ライム🍋‍🟩、不死鳥🐦‍🔥などの楽しい絵文字も使えるようになり、最新の絵文字を使用して表現の幅も広がります。\n\nさらに、今回のアップデートにより絵文字の多様性が強化され、文化、言語、アイデンティティをより適切に表現できるようになりました。プラットフォーム上でのやり取りにおいてすべての人が受け入れられていると感じられるようになります。\n\n[ドキュメント](https://gitlab-org.gitlab.io/ruby/gems/tanuki_emoji/)  \n[イシュー](https://gitlab.com/gitlab-org/ruby/gems/tanuki_emoji/-/issues/28)\n\n### Kubernetes 1.31のサポート\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\n本リリースでは、2024年8月にリリースされたKubernetesバージョン1.31のフルサポートが追加されました。Kubernetesにアプリをデプロイすると、接続しているクラスターを最新バージョンにアップグレードし、そのすべての機能を利用できるようになります。\n\n詳細については、[Kubernetesのサポートポリシーとサポートされているその他のKubernetesバージョン](https://docs.gitlab.com/ee/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features)を参照してください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/501390)  \n\n### `environment.action: access`と`prepare`の設定で`auto_stop_in`タイマーのリセットが可能に\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nこれまでは、`action: prepare`、`action: verify`、`action: access`ジョブを`auto_stop_in`と組み合わせた場合、タイマーはリセットされませんでした。18.0以降のバージョンでは、`action: prepare`と`action: access`を設定すると、タイマーがリセットされ、`action: verify`を設定すると、タイマーはそのままとなります。\n\n現時点では、`prevent_blocking_non_deployment_jobs`機能フラグを有効にすることで、タイマーがリセットされない問題を解消できます。\n\n複数の破壊的な変更は、`environment.action: prepare | verify | access`値の挙動を区別することを目的としています。`environment.action: access`キーワードを指定すると、タイマーのリセットを除き、現在の動作に最も近いままとなります。\n\n将来的に互換性の問題が発生しないように、これらのキーワードの使用方法を見直す必要があります。提案された変更の詳細については、次のイシューを参照してください。\n\n* [イシュー437132](https://gitlab.com/gitlab-org/gitlab/-/issues/437132)  \n* [イシュー437133](https://gitlab.com/gitlab-org/gitlab/-/issues/437133)  \n* [イシュー437142](https://gitlab.com/gitlab-org/gitlab/-/issues/437142)\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/yaml/#environmentauto_stop_in)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/437133)\n\n### APIを使用してグループ内でシークレットプッシュ保護を有効化\n\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\n本リリースでは、[REST API](https://docs.gitlab.com/ee/api/group_security_settings.html)と[GraphQL API](https://docs.gitlab.com/ee/api/graphql/reference/index.html#mutationsetgroupsecretpushprotection)を介して、グループ内のすべてのプロジェクトでシークレットプッシュ保護を有効にできるようになりました。これにより、プロジェクトごとではなく、グループごとにシークレットプッシュ保護を効率的に有効化できます。プッシュ保護が有効または無効になるたびに、監査イベントが記録されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/group_security_settings.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/502827)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/502828)\n\n### 高度なSASTでの検出精度を向上\n\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\n次の脆弱性クラスをより正確に検出できるように、高度なSASTを更新しました。\n\n* C\\#：OSコマンド導入とSQL挿入  \n* Go：パストラバーサル  \n* Java：コードインジェクション、ヘッダーまたはログへのCRLFインジェクション、クロスサイトリクエストフォージェリ（CSRF）、不適切な証明書の検証、脆弱なデシリアライゼーション、安全でないリフレクション、およびXML外部エンティティ（XXE）インジェクション  \n* JavaScript：コードインジェクション\n\nまた、C\\#（ASP.NET）とJava（JSF、HttpServlet）のユーザー入力ソースの検出を改善し、一貫性を保つために重大度レベルを更新しました。\n\n高度なSASTが各言語で検出できる脆弱性の種類を確認するには、[高度なSASTのカバレッジ](https://docs.gitlab.com/ee/user/application_security/sast/advanced_sast_coverage.html)を参照してください。この改良されたファイルや機能間のスキャンを使用するには、[高度なSASTを有効](https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html#enable-advanced-sast-scanning)にしてください。高度なSASTがすでに有効な場合は、新しいルールが[自動的に適用](https://docs.gitlab.com/ee/user/application_security/sast/rules.html#how-rule-updates-are-released)されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14685)  \n\n### 認証情報インベントリ内でグループおよびプロジェクトアクセストークンが表示されるように\n\nSaaS: Ultimate  \nSelf-Managed: -\n\nグループとプロジェクトのアクセストークンが、GitLab.comの資格情報インベントリに表示されるようになりました。これまでは、パーソナルアクセストークンとSSH鍵のみが表示されていました。インベントリ内に新たなトークンタイプが表示されるようになったことで、グループ全体の認証情報をさらに詳しく把握できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/credentials_inventory.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/498333)  \n\n### エンタープライズユーザーを一覧表示するAPIエンドポイントを追加\n\nSaaS: Premium、Ultimate  \nSelf-Managed: \\-\n\nグループオーナーは、専用のAPIエンドポイントを使用して、エンタープライズユーザーと関連する属性を一覧表示できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/group_enterprise_users.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/438366)  \n\n### アクセストークン用の説明フィールドを追加\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nパーソナル、プロジェクト、グループ、または代理のアクセストークンを作成する際に、任意でそのトークンの説明を入力できるようになりました。これにより、どこでどのように使用されるかなど、トークンに関する補足情報を入力できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#create-a-personal-access-token)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/443819)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_7/sscs_token_description.png\">\n\n### カスタムロールからオーナーの基本ロールを削除\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\nカスタムロールの作成時に、オーナーの基本ロールを利用できなくなりました。カスタムロールは権限を追加していく形で作成するものであり、オーナーの基本ロールを提供することは意味をなさないためです。オーナーの基本ロールを使用している既存のカスタムロールは、この変更の影響を受けません。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/custom_roles.html#create-a-custom-role)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/474273)\n\n## 実験的な機能\n\n### SCA Vulnerability Prioritizer\n\nこの実験的な機能の導入は、ユーザーが[依存関係スキャン](https://docs.gitlab.com/ee/user/application_security/dependency_scanning/index.html)または[コンテナスキャン](https://docs.gitlab.com/ee/user/application_security/container_scanning/index.html)中に特定された脆弱性への優先順位付けを支援する新たな一歩です。ユーザーは、このCI/CDコンポーネントを\\``.gitlab-ci.yml`\\`ファイルに含めることができます。これにより、プロジェクト内で見つかった脆弱性の優先順位付けレポートが生成されます。レポートはパイプラインに出力できます。\nこのコンポーネントは、GitLab GraphQL APIをクエリし、脆弱性データを取得後、次のように優先順位を付けます。\n\n1. 悪用が確認された既知の脆弱性（KEV）\n2. 悪用予測スコアリングシステム（EPSS）スコアが高い脆弱性\n3. 重大度の高い脆弱性\n\n検出および確認された脆弱性のみが表示されます。現在、このコンポーネントではEPSSとKEVデータを使用して、脆弱性の優先順位を付けています。EPSSとKEVデータは、依存関係スキャンとコンテナスキャンを通じて収集されるCVEでのみ利用可能です。詳細については、[Vulnerability Prioritizer](https://gitlab.com/components/vulnerability-prioritizer) を参照してください。\n\nフィードバックをお待ちしております。ぜひ[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509508)からご質問やコメントをお寄せください。\n\n### GitLab Self-Managedのカスタム管理者ロール\n\n管理者はカスタム管理者ロールを使用して、管理者エリアへのきめ細かいアクセスを提供できるようになりました。これにより、タスクを完了するために組織が管理者エリアへの完全なアクセス権をユーザーに付与する必要がなくなります。この機能は実験的に導入されました。詳細については、[カスタム管理者ロール](https://docs.gitlab.com/ee/user/custom_roles.html#custom-admin-roles)を参照してください。\n\nみなさまからのフィードバックをお待ちしています。ご質問やコメントがある場合、またはGitLabチームとのやり取りをご希望の場合は、こちらの[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/509376)をご覧ください。\n\n## バグ修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。  \n以下のリンクをクリックして、17.7のバグ修正、パフォーマンスの強化、UI改善についてすべてご覧ください。\n\n* [バグ修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.7)  \n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.7)  \n* [UIの改善](https://papercuts.gitlab.com/?milestone=17.7)\u003Cbr>\u003Cbr>\n\n*監修：川瀬 洋平 [@ykawase](https://gitlab.com/ykawase)\u003Cbr>\n（GitLab合同会社 カスタマーサクセス本部 シニアカスタマーサクセスマネージャー）*\n\n### 過去の日本語リリース情報\n### 過去の日本語リリース情報\n\n- [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n- [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n- [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n- [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)  \n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)  \n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)  \n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)  \n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)  \n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)\n",[672,671,14],"2025-02-06",{"slug":1127,"featured":92,"template":679},"gitlab-17-7-release","content:ja-jp:blog:gitlab-17-7-release.yml","Gitlab 17 7 Release","ja-jp/blog/gitlab-17-7-release.yml","ja-jp/blog/gitlab-17-7-release",{"_path":1133,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1134,"content":1140,"config":1146,"_id":1148,"_type":16,"title":1149,"_source":18,"_file":1150,"_stem":1151,"_extension":21},"/ja-jp/blog/gitlab-17-6-release",{"title":1135,"description":1136,"ogTitle":1135,"ogDescription":1136,"noIndex":6,"ogImage":1137,"ogUrl":1138,"ogSiteName":770,"ogType":771,"canonicalUrls":1138,"schema":1139},"GitLab 17.6リリース","GitLab 17.6でリリースした最新機能をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662194/Blog/Hero%20Images/product-gl17-blog-release-cover-17-6-0093-1800x945-fy25.png","https://about.gitlab.com/blog/gitlab-17-6-release","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 17.6リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2024-11-21\",\n      }",{"title":1135,"description":1136,"authors":1141,"heroImage":1137,"date":1142,"body":1143,"category":14,"tags":1144,"updatedDate":1145},[676],"2024-11-21","**セルフホストモデルが使用可能になったDuo Chat（ベータ版）を含むGitLab 17.6をリリース**\n\nこのたび、GitLab 17.6のリリースを発表しました。このリリースでは、セルフホストモデルが使用可能になったDuo Chat（ベータ版）、SASTとDASTセキュリティスキャナーの遵守チェック、脆弱性レポートのグループ化、モデルレジストリの一般提供など、さまざまな機能が追加されました！  \n\nこれらの機能は、今回のリリースに含まれる約150件の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLab 17.6には、GitLabコミュニティのユーザーから265件ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。  \n来月のリリースで予定されている内容を先取りするには、17.7リリースのキックオフビデオも視聴できる[今後のリリースページ](https://about.gitlab.com/direction/kickoff/)をご覧ください。\n\n> [GitLab 17.6では、セルフホストモデルが使用可能になったDuo Chatが追加されました。クリックしてSNSで共有しましょう！](http://twitter.com/share?text=GitLab+17.6+released+with+self-hosted+Duo+Chat+in+beta&url=https://about.gitlab.com/releases/2024/11/21/gitlab-17-6-released/&hashtags=)\n\n## 今月のMost Valuable Person [MVP](https://about.gitlab.com/community/mvp/)は[Joel Gerber](https://gitlab.com/Jitsusama)さんが受賞\n\nMVPには、誰もが[GitLabコミュニティのコントリビューターを推薦](https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490)できます。現在の候補者を応援したり、他の誰かをノミネートしてみませんか。🙌  \n\nJoelさんは、CIコンポーネントへの非常に貴重なコントリビューターとしての実績に加え、マージリクエストに関する洞察に富んだフィードバックや複雑なディスカッションに対する思慮深いコメントを寄せたことが評価されました。Joelさんのコントリビュートには、[CI/CDカタログのUIの改良](https://gitlab.com/gitlab-org/gitlab/-/issues/464703)、要望の多かったGitLab Terraform Providerのドキュメントの改善、[ジョブログのタイムスタンプ](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/164595)、[UI/UXチームへのフィードバックの提供](https://gitlab.com/gitlab-org/gitlab/-/issues/482524#note_2089551197)などが挙げられます。  \n\n[HackerOne社](https://www.hackerone.com/)のスタッフソフトウェアエンジニアであるJoelさんのコントリビュートと貴重なフィードバックの提供実績を評価し、推薦したのは、[Lee Tickett](https://gitlab.com/leetickett-gitlab)です。Leeは、GitLabのコントリビューターサクセスチームに所属するスタッフフルスタックエンジニアです。 \n\nLeeに続き、GitLabのシニア製品デザイナーである[Gina Doyle](https://gitlab.com/gdoyle)も、Joelさんを推薦しました。「GitLabでは多くのディスカッションが行われていたため、MRのプロセスが複雑になっていました。そのような状態でも、Joelさんは忍耐強く、そして積極的にディスカッションに参加し続け、コントリビュートしてくれました」とGinaは述べています。  \n\nまた、GitLabのスタッフ製品デザイナーである[Sunjung Park](https://gitlab.com/sunjungp)も次のように述べ、Joelさんの功績を讃えました。「Joelさんは、CI/CDカタログのイシューであったUIの改良にもコントリビュートしてくれました。Joelさんのおかげで、ユーザーインターフェイスが整い、他のエリアとの一貫性も保たれています」  \n\nJoelさんのコントリビュートを始め、GitLabにコントリビュートしてくださっているオープンソースコミュニティのみなさまに心より感謝します！\n\n## GitLab 17.6でリリースされた主な改善点\n\n### セルフホストモデルが使用可能になったGitLab Duo Chat\n\nSaaS: -\n\nSelf-Managed: Ultimate、Duo Enterprise\n\n選択した大規模言語モデル（LLM）を独自のインフラストラクチャでホストし、そのモデルをGitLab Duo Chatのソースとして設定できるようになりました。この機能はベータ版です。UltimateとDuo Enterpriseのサブスクリプションをお持ちであれば、Self-ManagedのGitLab環境でご利用いただけます。\n\nセルフホストモデルを使用すると、オンプレミスまたはプライベートクラウドでホストされたモデルを、GitLab Duo ChatまたはGitLab Duoコード提案（ベータ機能としてGitLab 17.5で導入）のソースとして利用できます。コード提案は現在、vLLMまたはAWS BedrockではオープンソースのMistralモデル、AWS BedrockではClaude 3.5 Sonnet、Azure OpenAIではOpenAIモデルをサポートしています。Duo Chatでは、vLLMまたはAWS BedrockではオープンソースのMistralモデル、AWS BedrockではClaude 3.5 Sonnetをサポートしています。セルフホストモデルを利用することで、エンタープライズレベルのデータ主権とプライバシーを維持しながら、生成AIの力を活用できます。\n\n[イシュー501268](https://gitlab.com/gitlab-org/gitlab/-/issues/501268)から、ぜひフィードバックをお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/self_hosted_models/)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/501267)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_6/self-hosted-models-ui-17.6.png\">\n\n### マージリクエストのレビュアーの割り当ての強化\nSaaS: Premium、Ultimate\n\nSelf-Managed: Premium、Ultimate\n\n慎重に変更内容を練り上げて、マージリクエストを準備したら、次のステップはプロセスを進めてくれるレビュアーを特定することです。マージリクエストに対し適切なレビュアーを特定するには、承認者として誰が適切であるか、また、提案する変更に関連する分野の専門家（コードオーナー）が誰であるかを見極める必要があります。  \n\nレビュアーを割り当てる際は、サイドバーでマージリクエストの承認要件とレビュアーの関連付けを行います。各承認ルールを閲覧してから、その承認ルールを満たしてマージリクエストを実行できる承認者を選択します。[オプションの「コードオーナー」セクション](https://docs.gitlab.com/ee/user/project/codeowners/#make-a-code-owners-section-optional)を使用する場合は、これらのルールもサイドバーに表示されるため、変更内容に関連する分野を得意とするレビュアーを見つけるのに役立ちます。  \n\nこのレビュアーの割り当ての強化により、GitLabにおけるレビュアーの割り当てプロセスが飛躍的に向上しました。これまではどのレビュアーをアサインすればよいか見極めるのに悩むことがありましたが、過去の判定処理に基づいて強化された本機能でその悩みが解消されます。なお、[今後のレビュアーの割り当てのイテレーション](https://gitlab.com/groups/gitlab-org/-/epics/14808)では、レビュアーの推薦やランク付けを行う際に使用する判定処理を引き続き強化していく予定です。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/merge_requests/reviews/#request-a-review)\n\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/12878)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_6/create-enhanced-reviewer-assignment.png\">\n\n### ワークスペースでのプライベートコンテナレジストリのサポート\n\nSaaS: Premium、Ultimate\n\nSelf-Managed: Premium、Ultimate\n\nGitLabワークスペースで、プライベートコンテナレジストリがサポートされるようになりました。この設定を使用すると、任意のプライベートレジストリからコンテナイメージをプルすることができます。Kubernetesクラスターに有効なイメージプルシークレットがあれば、[GitLabエージェントの設定](https://docs.gitlab.com/ee/user/workspace/gitlab_agent_configuration.html)からそのシークレットを参照できます。  \n\nこの機能により、特にカスタムコンテナレジストリやサードパーティのコンテナレジストリを使用するチームのワークフローが簡素化されるとともに、コンテナ化された開発環境の柔軟性とセキュリティが向上します。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/workspace/configuration.html#configure-support-for-private-container-registries)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14664)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/yPrJKAwwaB0?si=4PHEC08_xCy2xJ8B\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### ワークスペースで拡張機能マーケットプレースが利用可能に\n\nSaaS: Premium、Ultimate\n\nSelf-Managed: Premium、Ultimate\n\nワークスペースで拡張機能マーケットプレースを利用できるようになりました。拡張機能マーケットプレースでは、サードパーティの拡張機能を検索、インストール、管理できるため、開発体験が向上します。何千種類もの拡張機能から選択して、生産性の向上、ワークフローのカスタマイズを実現できます。  \n\nデフォルトでは、拡張機能マーケットプレースは無効になっています。利用を開始するには、ユーザー環境設定に移動して、[拡張機能マーケットプレースを有効にする](https://docs.gitlab.com/ee/user/profile/preferences.html#integrate-with-the-extension-marketplace)をオンにします。エンタープライズユーザーの場合は、トップレベルグループのオーナーロールを持つユーザーのみが[拡張機能マーケットプレースを有効にする](https://docs.gitlab.com/ee/user/enterprise_user/#enable-the-extension-marketplace-for-the-web-ide-and-workspaces)をオンにできます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/web_ide/index.html#extension-marketplace)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/12443)  \n\n\u003Cimg src=\"https://about.gitlab.com/images/17_6/extensions-marketplace.png\">\n\n### 終了のタイミングの遅延によるワークスペースライフサイクルの改善に\n\nSaaS: Premium、Ultimate  \nSelf-Managed: Premium、Ultimate\n\n本リリースでは、設定したタイムアウトが経過すると、ワークスペースが終了する代わりに、停止するようになりました。この機能を使用すると、いつでもワークスペースを再起動して、中断したところから再開できます。  \nデフォルトでは、ワークスペースは自動的に以下のように動作します。\n\n* ワークスペースが最後に起動または再起動されてから36時間後に停止する  \n* ワークスペースが最後に停止してから722時間後に終了する\n\nこれらの設定は、[GitLabエージェントの設定](https://docs.gitlab.com/ee/user/workspace/gitlab_agent_configuration.html)で行うことができます。  \nこの機能を使用すると、ワークスペースは停止してから1か月間ほど利用可能なままとなり、ワークスペースのリソースを最適化しつつ、進捗を保持できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/workspace/#automatic-workspace-stop-and-termination)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14910)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_6/workspace-suspend.gif\">\n\n### デプロイの詳細ページでのリリースノートの表示\n\nSaaS: Free、Premium、Ultimate\n\nSelf-Managed: Free、Premium、Ultimate\n\n承認するよう求められたデプロイに一体何が含まれているのか、疑問に思ったことはありませんか。これまでのバージョンでは、リリース作成時に内容に関する詳細な説明やテスト手順を含めることはできたものの、関連する環境固有のデプロイに関してはデータが表示されませんでした。今回のリリースで、GitLabでは関連するデプロイの詳細ページにリリースノートが表示されるようになりました。  \n\nGitLabのリリースは必ずGitタグから作成されるため、タグによりトリガーされたパイプラインに関連するデプロイメントにのみ、リリースノートが表示されます。  \nGitLabのこの新機能は、[Anton Kalmykov](https://gitlab.com/antonkalmykov)さんがコントリビュートしてくれました。この場を借りて、Antonさんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/environments/deployment_approvals.html#view-blocked-deployments)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/493260)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_6/deploy-automatically-show-release-notes.png\">\n\n### 管理者設定により、CI/CDジョブトークン許可リストの使用を強制\n\nSaaS: -\n\nSelf-Managed: Free、Premium、Ultimate \n\n以前に、デフォルトのCI/CDジョブトークン（`CI_JOB_TOKEN`）の動作が[GitLab 18.0で変更される予定であり](https://docs.gitlab.com/ee/update/deprecations.html#default-cicd-job-token-ci_job_token-scope-changed)、引き続きプロジェクトにアクセスできるようにしたい場合は、明示的に個々の[プロジェクトやグループをプロジェクトのジョブトークン許可リスト](https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#add-a-group-or-project-to-the-job-token-allowlist)に追加する必要があることを発表しました。  \n\n本バージョンからSelf-ManagedおよびGitLab Dedicatedインスタンスの管理者は、インスタンス上のすべてのプロジェクトに対して、より安全性の高いこの設定を強制できるようになりました。この設定を有効にすると、プロジェクトにおいてCI/CDジョブトークンを認証に使用したい場合、必ず許可リストを使用する必要があります。*注：セキュリティポリシーの強化の一環として、この設定を有効にすることをおすすめします。*\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/settings/continuous_integration.html#job-token-permissions)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/496647)  \n\n\u003Cimg src=\"https://about.gitlab.com/images/17_6/allowlist_enforce_instance_toggle.png\">  \n\n### CI/CDジョブトークンによる認証の追跡\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nこれまでは、CI/CDジョブトークンによる認証を利用してご自身のプロジェクトにアクセスしている他のプロジェクトを追跡する機能はありませんでした。今回のリリースで認証ログが追加され、プロジェクトへのアクセスを簡単に監査および管理できるようになりました。  \n\n認証ログでは、ご自身のプロジェクトでジョブトークンによる認証を行った他のプロジェクトのリストをUI上で閲覧できるほか、CSVファイルにしてダウンロードできます。このデータは、プロジェクトへのアクセスの監査に使用できます。また、[ご自身のプロジェクトにアクセスできるオブジェクトヘの制御](https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#control-job-token-access-to-your-project)を強化するために、ジョブトークン許可リストを作成する際に参考にできます。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#job-token-authentication-log)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/467292)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_6/auth_log_allowlist.png\">\n\n### 脆弱性レポートのグループ化\n\nSaaS: Ultimate\n\nSelf-Managed: Ultimate\n\n脆弱性をグループ別に表示する機能は、ユーザーにとって必須です。セキュリティアナリストは、グループに対して一括操作を適用することで、最適な方法でタスクをトリアージしやすくなります。さらに、ユーザーは自分が担当するグループに一致する脆弱性の数（OWASPトップ10の脆弱性の数など）を閲覧できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/vulnerability_report/#group-vulnerabilities)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/10164)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_6/vulnerability_report_grouping.png\">\n\n### モデルレジストリの一般提供を開始\n\nSaaS: Free、Premium、Ultimate\n\nSelf-Managed: Free、Premium、Ultimate\n\nGitLabのモデルレジストリの一般提供を開始しました。モデルレジストリは、既存のGitLabワークフローの流れの中で、機械学習モデルを一元的に管理できるハブです。モデルバージョンの追跡、アーティファクトとメタデータの保存に加え、モデルカード内で包括的なドキュメントを保持できます。  \n\nモデルレジストリはシームレスに統合できるように構築されているため、[MLflowクライアント](https://docs.gitlab.com/ee/user/project/ml/experiment_tracking/mlflow_client.html)とネイティブに連携可能です。また、CI/CDパイプラインに直接接続し、自動化されたモデルのデプロイとテストを可能にします。データサイエンティストは、直感的なUIまたは既存のMLflowワークフローを介してモデルを管理できます。一方、MLOpsチームも、セマンティックバージョニングとCI/CDインテグレーションを活用して、[GitLab API](https://docs.gitlab.com/ee/api/model_registry.html)内で本番環境のデプロイをすべて効率化できます。  \n\n[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/504458)からお気軽にご意見をお寄せください。こちらから折り返しご連絡いたします。GitLabインスタンスで**「デプロイ」\\>「モデルレジストリ」**の順にアクセスして、ぜひご利用ください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/ml/model_registry/)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14998)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_6/model-registry-17.6.png\">\n\n### GitLab Dedicated向けの新しいテナントネットワーク設定\n\nSaaS: -\n\nSelf-Managed: Ultimate\n\nGitLab Dedicatedのテナント管理者は、スイッチボードを使ってアウトバウンドプライベートリンクとプライベートホストゾーンを設定できるようになりました。また、スイッチボードで定期的にスナップショットを閲覧して、ネットワーク接続をモニタリングすることも可能です。\n\nアウトバウンドプライベートリンクとプライベートホストゾーンを設定することで、AWSアカウント内のリソースとGitLab Dedicated間でセキュアなネットワーク接続を確立できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/dedicated/configure_instance/network_security.html#outbound-private-link)  \n[イシュー](https://about.gitlab.com/direction/saas-platforms/switchboard/#fy25-q3)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_6/switchboard-tenant-networking-config.png\">\n\n### SASTとDASTセキュリティスキャナーの新しい遵守チェック\n\nSaaS: Ultimate\n\nSelf-Managed: Ultimate\n\nGitLabは、SAST、シークレット検出、依存関係スキャン、コンテナスキャンなど、幅広いセキュリティスキャナーを提供しており、これらを使用してアプリケーションにセキュリティの脆弱性が潜んでいないかチェックできます。\n何らかの方法で監査担当者や関係するコンプライアンス当局に対し、リポジトリへのセキュリティスキャナーの設定を義務付ける規制基準にアプリケーションが従っていることを示す必要があります。\n\n本リリースでは、こういった規制基準への遵守を証明するために、コンプライアンスセンターの基準遵守レポートに新しいチェックを2つ追加しました。新たに追加されたチェックは、グループ内のプロジェクトでSASTとDASTが有効になっているかどうかを点検します。これらのチェックにより、プロジェクトにおいてSASTとDASTセキュリティスキャナーが正しく実行され、パイプラインの実行により正しいアーティファクトを得られるかどうかを確かめることができます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/compliance_center/compliance_standards_adherence_dashboard.html#gitlab-standard)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/12661)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_6/dast_scanner_adherence.png\">\n\n## GitLab 17.6のリリースに含まれるその他の改善点\n\n### グループWebhookのプロジェクトイベント\n\nSaaS: Premium、Ultimate\n\nSelf-Managed: Premium、Ultimate\n\nこのリリースでは、グループWebhookにプロジェクトイベントが追加されました。次のような場合に、プロジェクトイベントがトリガーされます。\n\n* グループ内にプロジェクトが作成されたとき  \n* グループ内でプロジェクトが削除されたとき\n\nこれらのイベントは、[グループWebhook](https://docs.gitlab.com/ee/user/project/integrations/webhooks.html#group-webhooks)に対してのみトリガーされます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html#project-events)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/359044)  \n\n### 任意のCI/CDジョブでのPagesサイトのデプロイ\n\nSaaS: Free、Premium、Ultimate\n\nSelf-Managed: Free、Premium、Ultimate\n\nPagesのデプロイジョブに「`pages`」という名前を付ける必要がなくなり、パイプラインをより柔軟に設計できるようになりました。今後は任意のCI/CDジョブで`pages`属性を使用するだけで、Pagesのデプロイをトリガーできます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/pages/#user-defined-job-names)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/232505)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_6/customizable-pages-job-name.png\">\n\n### ユーザーレベルでのGitLab Duo Enterpriseの利用状況メトリクスの取得\n\nSaaS: Ultimate、Duo Enterprise\n\nSelf-Managed: Ultimate、Duo Enterprise\n\nこれまでのリリースでは、GitLab Duo EnterpriseユーザーごとにGitLab Duo Chatおよびコード提案の使用状況データを取得することはできませんでした。それに対する改善として、17.6では、アクティブなGitLab Duo Enterpriseユーザーごとに、コード提案の採用数とDuo Chatとのインタラクションを可視化するGraphQL APIを追加しました。このAPIを使用すると、誰がどのGitLab Duo Enterprise機能をどのくらいの頻度で使用しているかといった情報を、より詳細に把握できます。この改善は、GitLabにおいて[GitLab Duo Enterpriseのより包括的な使用状況データを提供する](https://gitlab.com/groups/gitlab-org/-/epics/15026)という目標に向けた最初のイテレーションです。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/graphql/reference/#aiusermetrics)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/483049)  \n\n### GitLab Duoでの企業ネットワークサポート\n\nSaaS: Premium、Ultimate\n\nSelf-Managed: Premium、Ultimate\n\nGitLab Duoプラグインの最新アップデートで、高度なプロキシ認証が導入され、デベロッパーは強固なファイアウォールで守られている企業環境にもスムーズに接続できるようになりました。既存のHTTPプロキシサポートをベースに構築されたこの機能拡張により、認証された接続を確立できるだけでなく、VS CodeとJetBrains IDE内でGitLab Duo機能に安全な方法で中断なくアクセスすることが可能です。\n\nデベロッパーは制限されたネットワーク環境において安全な方法で認証して接続する必要があるため、今回のアップデートは非常に重要と言えるでしょう。これにより、セキュリティを損なうことなく、GitLab Duoの全機能を利用できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/editor_extensions/language_server/#enable-proxy-authentication)  \n[イシュー](https://gitlab.com/gitlab-org/editor-extensions/gitlab-lsp/-/issues/159)  \n\n### GitLab Runner 17.6\n\nSaaS: Free、Premium、Ultimate\n\nSelf-Managed: Free、Premium、Ultimate\n\n本日、GitLab Runner 17.6もリリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドのエージェントです。GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。  \n\nバグ修正\n\n* [GitLab Runner 17.5.0で、ポッドが追加できる状態にならない](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38260)  \n* [フリートプラグインのインストール時に`exec format error`が発生して、Runnerがクラッシュする](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38247)  \n* [OOMKill 実行時に、cgroup v2が有効であるKubernetes executerポッドがハングする  ](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38244)\n* [設定テンプレートを使用してRunnerを登録すると、Runnerのデフォルトが適用されない](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38231)  \n* [execモードを使用している場合、ポーリング期間中にKubernetesポッドが追加可能な状態になるまで、GitLab Runnerが待機状態になる](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37244)  \n* [`FF_GIT_URLS_WITHOUT_TOKENS`機能フラグが有効な場合、認証の問題が発生する](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38268)\n\n[ドキュメント](https://docs.gitlab.com/runner)  \n\n### macOS Sequoia 15およびXcode 16のジョブイメージ\n\nSaaS: Premium、Ultimate\n\nSelf-Managed: -\n\nmacOS Sequoia 15とXcode 16を使用して、最新世代のAppleデバイス向けアプリケーションを作成、テスト、デプロイできるようになりました。  \n\n[macOSにホストされているGitLab Runner](https://docs.gitlab.com/ee/ci/runners/hosted_runners/macos.html)を使用すれば、GitLab CI/CDと統合された安全なオンデマンドのビルド環境で、開発チームがmacOSアプリケーションをより迅速にビルドし、デプロイできます。\n\n`.gitlab-ci.yml`ファイルの`macos-15-xcode-16`イメージを使用して、ぜひお試しください。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/runners/hosted_runners/macos.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/502852)  \n\n### CI/CDジョブの環境でのGitLabエージェントの選択\n\nSaaS: Free、Premium、Ultimate\n\nSelf-Managed: Free、Premium、Ultimate\n\nKubernetes用のダッシュボードを使用するには、環境設定からKubernetesとの接続用エージェントを選択する必要があります。これまでは、UIまたはAPI（GitLab 17.5以降のバージョン）からしかエージェントを選択できなかったため、CI/CDからダッシュボードの設定を行うことはできませんでした。GitLab 17.6では、`environment.kubernetes.agent`構文を使用して、エージェント接続を設定できるようになりました。さらに、[イシュー500164](https://gitlab.com/gitlab-org/gitlab/-/issues/500164)では、CI/CDの設定からネームスペースとFluxリソースを選択できるようにすることを提案しています。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html#configure-a-dashboard-for-a-dynamic-environment)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/467912)  \n\n### APIを介してプロジェクトでシークレットプッシュ保護を有効化\n\nSaaS: Ultimate\n\nSelf-Managed: Ultimate\n\nプログラムからさらに簡単にシークレットプッシュ保護を有効化できるようになりました。次のことを行えるように、アプリケーション設定のREST APIを更新しました。1. Self-Managedインスタンスで本機能を有効化し、プロジェクト単位で有効にする。2. プロジェクトで本機能が有効になっているかどうかを確認する。3. 指定したプロジェクトで本機能を有効にする。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/projects.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/490358)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/490357)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/490359)  \n\n### CycloneDX SBOMに含まれるライセンスデータのサポート\n\nSaaS: Ultimate\n\nSelf-Managed: Ultimate\n\nライセンススキャナーで、[サポートされているパッケージタイプ](https://docs.gitlab.com/ee/user/compliance/license_scanning_of_cyclonedx_files/#supported-languages-and-package-managers)を含む、CycloneDX SBOMに格納されている依存関係のライセンスデータを使用できるようになりました。  \n\nCycloneDX SBOMの`licenses`フィールドが使用可能な場合、ユーザーのSBOMから取得されたライセンスデータが表示されます。SBOMにライセンス情報が含まれていない場合は、引き続きライセンスデータベースからライセンスデータが取得されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/yaml/artifacts_reports.html#artifactsreportscyclonedx)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/415935)  \n\n### 特権関連のアクションの監査イベント\n\nSaaS: -\n\nSelf-Managed: Free、Premium、Ultimate\n\n特権設定に関連する管理者アクションの監査イベントが追加されました。これらの設定が変更されたタイミングを記録することで、監査証跡が残るため、セキュリティを強化できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/audit_event_types.html#groups-and-projects)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/486532)  \n\n### 新しい場所からのサインインを通知するメールに情報を追加\n\nSaaS: -\n\nSelf-Managed: Free、Premium、Ultimate\n\nGitLabは、新しい場所からのサインインが検出された場合、オプションでメールを送信します。これまで、このメールにはIPアドレスしか記載されておらず、場所関連の情報は含まれていませんでした。本リリースから、メールに都市と国の情報も記載されるようになりました。\n\nこの場を借りて、コントリビュートしてくれた[Henry Helm](https://gitlab.com/shangsuru)さんに感謝します！  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/notifications.html#notifications-for-unknown-sign-ins)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/296128)  \n\n### サービスアカウントのバッジ\n\nSaaS: Premium、Ultimate\n\nSelf-Managed: Premium、Ultimate\n\nサービスアカウントに所定のバッジが付き、ユーザーリストで簡単に識別できるようになりました。これまでサービスアカウントに付いていたボットバッジのみでは、グループやプロジェクトアクセストークンと区別するのが困難でしたが、今回のリリースで改善されました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/service_accounts.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/439768)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_6/govern_serviceaccountbadge.png\">\n\n### シートの割り当て有無によるGitLab Duoユーザーのフィルタリング\n\nSaaS: Premium、Ultimate、GitLab Duo Pro、GitLab Duo Enterprise\n\nSelf-Managed:  Premium、Ultimate、GitLab Duo Pro、GitLab Duo Enterprise\n\nこれまでのバージョンのGitLabでは、GitLab Duoシート割り当てページに表示されるユーザーリストをフィルタリングすることができなかったため、過去にGitLab Duoシートが割り当てられたことがあるユーザーを検索することができませんでした。本リリースから「アサインされたシート = はい」または「アサインされたシート = いいえ」でユーザーリストをフィルタリングして、現在どのユーザーにGitLab Duoシートが割り当てられているのか、または割り当てられていないのかを確認できるようになり、シートの割り当てを簡単に調整できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/subscriptions/subscription-add-ons.html#view-assigned-gitlab-duo-users)  \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/14683)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_6/filter-users-by-assigned-duo-seat.png\">\n\n### GitLab Duo Pro向けのAIインパクト分析API\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nSelf-Managed:  Premium、Ultimate、Duo Pro、Duo Enterprise\n\nGitLab Duo Proをご利用の方は、`aiMetrics` GraphQL APIを使ってAIインパクト分析メトリクスにプログラムからアクセスできるようになりました。メトリクスには、割り当て済みのGitLab Duoシート数、Duo Chatのユーザー数、コード提案のユーザー数が含まれます。APIを介して、コード提案に関する詳細情報（表示された回数や採用回数）も取得できます。このデータを参照することで、コード提案の採用率を計算できるほか、GitLab Duo ProユーザーによるDuo Chatとコード提案の導入状況をより明確に把握できます。また、AIインパクト分析メトリクスをバリューストリーム分析やDORAメトリクスと組み合わせれば、Duo Chatやコード提案の導入がチームの生産性にどのような影響を及ぼしているかをより深く理解することができます。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/graphql/reference/#aimetrics)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/498497)  \n\n### 完了したアイテムをビューから簡単に削除できるように\n\nSaaS: Free、Premium、Ultimate\n\nSelf-Managed: Free、Premium、Ultimate\n\n「**クローズ済みアイテムを表示**」の切り替えをオフにすることで、リンクされたアイテムや子アイテムリストの完了したアイテムを非表示にできるようになりました。この機能の追加により、複雑なプロジェクトにおいて視覚的に邪魔な要素を整理できるようになったため、ビューをより自由に制御でき、進行中の作業に集中しやすくなりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/epics/manage_epics.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/456941)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_6/easily_remove_closed_items_from_your_view.png\">\n\n### リポジトリX-Rayの自動化\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nSelf-Managed:  Premium、Ultimate、Duo Pro、Duo Enterprise\n\nリポジトリX-Rayは、プロジェクトの依存関係関連の追加のコンテキストを提供することで、コード推奨内容の正確性と関連性を向上させ、GitLab Duoコード提案のコード生成リクエストを強化します。これはコード生成の品質向上につながります。これまでリポジトリX-RayではCIジョブが使用されており、ユーザーが設定や管理を行う必要がありました。  \n本リリースから、新規コミットがプロジェクトのデフォルトブランチにプッシュされると、リポジトリX-Rayによって、リポジトリ内の該当する設定ファイルをスキャンして解析するバックグラウンドジョブが自動的にトリガーされるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/repository/code_suggestions/repository_xray.html)  \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/14100)  \n\n### マージを実行する日時設定が可能に\n\nSaaS: Free、Premium、Ultimate\n\nSelf-Managed: Free、Premium、Ultimate\n\nマージリクエストの中には、特定の日付または時間になるまで、マージの実行を保留する必要があるものもあります。その場合、その日付または時間になったら、マージ権限を持つユーザーを見つけて対応してもらわなければなりません。そのタイミングが勤務時間外だったり、必ずスケジュール通りにマージを実行しなければならなかったりする場合は、事前に誰かにタスクの対応を依頼しておく必要があるでしょう。  \n\n本リリースから、マージリクエストを作成または編集する際に、`merge after`を使用して日付を指定できるようになりました。この方法で日付を指定すると、その日付が過ぎるまでマージリクエストがマージされません。この新機能と以前リリースされた[自動マージの改善機能](https://about.gitlab.com/releases/2024/09/19/gitlab-17-4-released/#auto-merge-when-all-checks-pass)を組み合わせることで、マージリクエストのマージ実行を柔軟にスケジュールできるようになります。  \n\nこの場を借りて、素晴らしいコントリビュートをしてくれた[Niklas van Schrick](https://gitlab.com/Taucher2003)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/merge_requests/auto_merge.html#prevent-merge-before-a-specific-date)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/14380)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_6/create-scheduled-merge.png\">\n\n### JaCoCoのテストカバレッジの可視化の一般提供を開始\n\nSaaS: Free、Premium、Ultimate\n\nSelf-Managed: Free、Premium、Ultimate\n\nマージリクエストの差分ビューで、JaCoCoのテストカバレッジ結果を直接確認できるようになりました。この可視化により、テストでどの行がカバーされていて、マージ前にどの行を追加でカバーする必要があるかを素早く特定できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/testing/test_coverage_visualization/jacoco.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/227345)  \n\n### `glab agent bootstrap` コマンドで新たに値をサポート\n\nSaaS: Free、Premium、Ultimate\n\nSelf-Managed: Free、Premium、Ultimate\n\n前回のリリースでは、GitLab CLIツールにおけるエージェントの立ち上げを簡単に行える機能を導入しました。GitLab 17.6では、カスタムHelm値に対応し、`glab cluster agent bootstrap`コマンドをさらに改善しました。`--helm-release-values`と`--helm-release-values-from`フラグを使用して、生成された`HelmRelease`リソースをカスタマイズできます。\n\n[ドキュメント](https://gitlab.com/gitlab-org/cli/-/blob/main/docs/source/cluster/agent/bootstrap.md#options)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/482844)  \n\n### EPSSによる効率的なリスクの優先順位付け\n\nSaaS: Ultimate\n\nSelf-Managed: Ultimate\n\nGitLab 17.6では、悪用予測スコアリングシステム（EPSS）のサポートを追加しました。EPSSは各共通脆弱性識別子（CVE）に0～1のスコアを付けて、今後30日以内にそのCVEが悪用される確率を示します。EPSSを活用すれば、スキャン結果の優先順位付けを改善できるほか、脆弱性によって環境に生じうる影響を評価できます。\n\nこのデータは、GraphQLを介してコンポジション解析ユーザーが利用できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/graphql/reference/#cveenrichmenttype)  \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/11544)  \n\n### 除外が適用されたシークレットプッシュ保護の監査イベントを記録\n\nSaaS: Ultimate\n\nSelf-Managed: Ultimate\n\nシークレットプッシュ保護の除外が適用された場合に、監査イベントが記録されるようになりました。これにより、セキュリティチームは、プロジェクトの除外リストに含まれるシークレットのプッシュが許可された場合に発生する出来事をすべて監査し、追跡できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/secret_detection/exclusions.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/492465)  \n\n### グループの保護ブランチの変更を防止\n\nSaaS: Ultimate\n\nSelf-Managed: Ultimate\n\nグループのブランチの変更を禁じるようにマージリクエストの承認ポリシーが設定されている場合、ポリシーにおいてグループに設定された保護ブランチが考慮されるようになりました。この設定が有効な場合、グループレベルで保護されたブランチの保護を解除することはできません。保護ブランチでは、ブランチの削除やブランチへの強制プッシュなど、特定のアクションが制限されます。新たに追加された`approval_settings.block_group_branch_modification`プロパティを使用して、この動作を上書きし、特定のトップレベルグループに対して例外を宣言すれば、グループオーナーが必要に応じて保護ブランチを一時的に変更できるようになります。  \n\nこの新たなプロジェクトの上書き設定により、グループの保護ブランチ設定を変更してセキュリティやコンプライアンス要件を回避することができなくなり、より安定した状態で保護ブランチを使用できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/merge_request_approval_policies.html#approval_settings)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13776)  \n\u003Cimg src=\"https://about.gitlab.com/images/17_6/override-group-branches.png\">\n\n### OTP認証アプリとWebAuthnデバイスを個別に無効化\n\nSaaS: Free、Premium、Ultimate\n\nSelf-Managed: Free、Premium、Ultimate\n\nワンタイムパスワード（OTP）認証アプリとWebAuthnデバイスを個別または同時に無効にできるようになりました。これまではOTP認証アプリを無効にすると、WebAuthnデバイスも無効化されていました。個別に操作できるようになったことで、これらの認証方法をより細かく制御できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/account/two_factor_authentication.html#disable-two-factor-authentication)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/393419)  \n\n### マージリクエストのマージ時の新しい監査イベント\n\nSaaS: Ultimate\n\nSelf-Managed: Ultimate\n\n本リリースでは、マージリクエストのマージ時に`merge_request_merged`という新しいタイプの監査イベントがトリガーされるようになりました。この監査イベントには、次のようなマージリクエストに関する重要な情報が含まれます。\n\n* マージリクエストのタイトル  \n* マージリクエストの説明またはサマリー  \n* マージに必要な承認数  \n* マージに付与された承認数  \n* マージリクエストを承認したユーザー  \n* コミッターによるマージリクエストの承認有無  \n* 作成者によるマージリクエストの承認有無  \n* マージの日付や時刻  \n* コミット履歴から取得したSHAリスト\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/audit_event_types.html#compliance-management)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/442279)  \n\n### トップレベルグループのオーナーがサービスアカウントを作成できるように\n\nSaaS: -\n\nSelf-Managed: Premium、Ultimate\n\n現在、GitLab Self-Managedでサービスアカウントを作成できるのは管理者のみです。本リリースでは、トップレベルグループのオーナーに対してサービスアカウントの作成を許可するオプション設定が追加されました。これにより、管理者はロールの範囲を広げてサービスアカウントの作成を許可するか、管理者のみが許可されたタスクのままとするかを選択できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/settings/account_and_limit_settings.html#allow-top-level-group-owners-to-create-service-accounts)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/468806)  \n\n### APIの使用によるトークン関連情報の取得\n\nSaaS: -\n\nSelf-Managed: Free、Premium、Ultimate\n\n管理者は、新しいトークン情報のAPIを使用して、パーソナルアクセストークンに関する情報の取得、トークンのデプロイ、トークンへの入力を行えます。トークン情報が公開される他のAPIエンドポイントとは異なり、このエンドポイントを使用した場合、管理者はトークンの種類を知らなくてもトークン情報を取得できます。  \n\nこの場を借りて、コントリビュートしてくれた[Nicholas Wittstruck](https://gitlab.com/nwittstruck)さんを始め、シーメンス社の皆さまに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ee/api/admin/token.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/443597)  \n\n### GitLab Duoシートの割り当てに関する通知メールのアップデート\n\nSaaS: -\n\nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nSelf-Managedインスタンスの全ユーザーに対して、GitLab Duoシートが割り当てられたタイミングでメールが送信されるようになりました。  \n\nこれまでは、GitLab Duo Enterpriseシートが割り当てられたユーザーや、一括割り当てによってアクセスを許可されたユーザーには通知メールは送信されませんでした。そのため、ほかのユーザーに教えてもらうか、GitLab UIで新しい機能に気付かない限り、自分にシートが割り当てられていることを知ることはできませんでした。  \n\n管理者は`duo_seat_assignment_email_for_sm`という名前の機能フラグを無効にすることで、このメール通知を無効化できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/subscriptions/subscription-add-ons.html#assign-gitlab-duo-seats)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/170507)  \n\n## バグ修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。  \n17.6で提供されたすべてのバグ修正、パフォーマンスの改善、UIの改善を確認するには、以下のリンクをクリックしてください。\n\n* [バグ修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.6)  \n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.6)  \n* [UIの改善](https://papercuts.gitlab.com/?milestone=17.6)\n\n## 非推奨事項\n\n削除されたすべての機能の一覧は、[GitLabのドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n- [GitLab chart use of NGINX controller image v1.3.1](https://docs.gitlab.com/ee/update/deprecations.html#gitlab-chart-use-of-nginx-controller-image-v131)\n- [Removal of `migrationState` field in `ContainerRepository` GraphQL API](https://docs.gitlab.com/ee/update/deprecations.html#removal-of-migrationstate-field-in-containerrepository-graphql-api)\n- [Guest users can pull packages from private projects on GitLab.com](https://docs.gitlab.com/ee/update/deprecations.html#guest-users-can-pull-packages-from-private-projects-on-gitlabcom)\n- [Deprecate CI job implementation of Repository X-Ray](https://docs.gitlab.com/ee/update/deprecations.html#deprecate-ci-job-implementation-of-repository-x-ray)\n- [Pipeline subscriptions](https://docs.gitlab.com/ee/update/deprecations.html#pipeline-subscriptions)\n- [Pipelines API cancel endpoint returns error for non-cancelable pipelines](https://docs.gitlab.com/ee/update/deprecations.html#pipelines-api-cancel-endpoint-returns-error-for-non-cancelable-pipelines)\n\n## 削除された機能と破壊的な変更\n\n削除されたすべての機能の一覧は、[GitLabのドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n### **変更履歴**\n\n変更内容をすべて表示するには、以下のページから変更履歴を確認してください。\n\n* [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)   \n* [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)   \n* [VS CodeのGitLabワークフロー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)   \n* [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases) \n\n### **インストール**\n\nGitLabを新規にインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/ja-jp/install/)をご覧ください。\n\n### **更新**\n\n[更新ページ](https://about.gitlab.com/ja-jp/update/)を確認してください。\n\n### **ご不明な点がある場合**\n\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスして質問を投稿してください。\n\n### **GitLabサブスクリプションプラン**\n\n* [Freeプラン](https://about.gitlab.com/pricing/) \n\n  個人ユーザー向けの永久無料機能を提供\n\n* [Premiumプラン](https://about.gitlab.com/pricing/premium/) \n\n  チームの生産性と調整を強化\n\n* [Ultimateプラン](https://about.gitlab.com/pricing/ultimate/) \n\n  組織全体のセキュリティ、コンプライアンス、プランニングに対応\n\n> GitLabのすべての機能を[無料](https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/blog&glm_content=default-saas-trial)でお試しいただけます。\n\n*監修：知念 梨果 [@rikachinen](https://gitlab.com/rikachinen)* \u003Cbr>\n*（GitLab合同会社 カスタマーサクセス本部 カスタマーサクセスエンジニア）*\n\n### 過去の日本語リリース情報\n\n### 過去の日本語リリース情報\n\n- [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n- [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n- [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n- [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)  \n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)  \n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)  \n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)  \n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)  \n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)\n",[672,671,14],"2025-02-18",{"slug":1147,"featured":92,"template":679},"gitlab-17-6-release","content:ja-jp:blog:gitlab-17-6-release.yml","Gitlab 17 6 Release","ja-jp/blog/gitlab-17-6-release.yml","ja-jp/blog/gitlab-17-6-release",{"_path":1153,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1154,"content":1160,"config":1166,"_id":1168,"_type":16,"title":1169,"_source":18,"_file":1170,"_stem":1171,"_extension":21},"/ja-jp/blog/data-driven-devsecops-exploring-gitlab-insights-dashboards",{"title":1155,"description":1156,"ogTitle":1155,"ogDescription":1156,"noIndex":6,"ogImage":1157,"ogUrl":1158,"ogSiteName":770,"ogType":771,"canonicalUrls":1158,"schema":1159},"データドリブンのDevSecOps：GitLabインサイトダッシュボードのご紹介","主要なメトリクスの可視化、プロジェクトの進捗状況の追跡、カスタマイズ可能なデータドリブンビューを使ったチームの生産性の改善など、GitLabインサイトダッシュボードの活用方法について説明します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097210/Blog/Hero%20Images/Blog/Hero%20Images/blog-image-template-1800x945%20%2811%29_78Dav6FR9EGjhebHWuBVan_1750097210214.png","https://about.gitlab.com/blog/data-driven-devsecops-exploring-gitlab-insights-dashboards","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"データドリブンのDevSecOps：GitLabインサイトダッシュボードのご紹介\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Ricardo Amarilla Villalba\"}],\n        \"datePublished\": \"2024-11-20\",\n      }",{"title":1155,"description":1156,"authors":1161,"heroImage":1157,"date":1163,"body":1164,"category":14,"tags":1165},[1162],"Ricardo Amarilla Villalba","2024-11-20","メトリクスおよび分析は、生産性や品質を高め、成功を収める上で極めて重要な要素です。包括的なDevSecOpsプラットフォームであるGitLabでは、こういった重要なメトリクスを追跡・可視化するための強力なツールをインサイトダッシュボード上で提供しています。この記事では、ご利用の環境でのインサイトダッシュボードの使用方法についてご紹介します。\n\n\n## GitLabのメトリクスと分析ツールのご紹介 \n\n\nGitLabでは、DevSecOpsライフサイクルのさまざまな側面に対応したメトリクスおよび分析ツール群をご用意しています。\n\n\n1.\n[生産性分析](https://docs.gitlab.com/ee/user/analytics/productivity_analytics.html)：チームの開発速度、サイクルタイム、リードタイムを追跡します。  \n\n2.\n[コードレビュー分析](https://docs.gitlab.com/ee/user/analytics/code_review_analytics.html)：コード品質、テストカバレッジ、レビュー効率を測定します。  \n\n3.\n[CI/CD分析](https://docs.gitlab.com/ee/user/analytics/ci_cd_analytics.html)：パイプラインのパフォーマンスとデプロイ頻度をモニタリングします。  \n\n4.\n[バリューストリーム分析](https://docs.gitlab.com/ee/user/group/value_stream_analytics/)：アイデア出しから本番稼働までの作業の流れを可視化します。  \n\n5.\n[インサイト](https://docs.gitlab.com/ee/user/project/insights/)：プロジェクトやグループに関するデータを調べて可視化します。\n\n\n開発プロセスに関する貴重なインサイトを得られるこれらのメトリクスを参考にして、ボトルネックの特定、ワークフローの最適化、データドリブンな意思決定を行えます。\n\n\n## 特定のメトリクスへのラベルの活用\n\n\nあまり目立たないものの、GitLabの特に強力な機能の1つがラベルです。ラベルを使うと、特定のメトリクスに絞り込んで、極めて正確に焦点を当てられます。イシューやマージリクエスト、エピックに戦略的にラベルを適用することで、プロジェクトのパフォーマンスや進捗について的確なインサイトを得られるカスタムビューを作成できます。\n\n\n用途の広い識別子として機能するGitLabのラベルを使用すれば、作業アイテムを柔軟に分類・整理できます。機能開発やバグ修正、チーム固有のタスクなど、追跡対象が何であれ、ラベルを使用すれば、プロジェクトデータをスライスして、別の視点から分析して意味のあるパターンや傾向を特定することが可能です。この概念は、クラウドのデプロイにおいて、管理やコスト配分、運用上のインサイト取得をスムーズに行うためにタグを使用するのと似ています。\n\n\nしっかりと考えながら作業アイテムにラベルを付けていくことで、カスタムダッシュボードやレポートの生成に活用できる高度なラベリングシステムが実質的に構築されます。このアプローチにより、チームや関係者にとって最も重要なメトリクスを重点的に取り上げられるとともに、プロジェクトの健全性と勢いに焦点を絞ってわかりやすく可視化できます。\n\n\n## GitLabインサイトの設定方法\n\n\nGitLabインサイトを使用すると、プロジェクトやグループに関するデータを調べて可視化できます。特定の期間内に作成された、または完了したイシュー、マージリクエストのマージが完了するまでの平均時間、トリアージの健全性など、さまざまな側面に関する有用な分析情報を得られます。インサイトは、プロジェクトとグループのどちらにも設定できます。\n\n\nインサイトの設定手順は次のとおりです。\n\n\n1. プロジェクトにインサイトを設定する場合：  \n   * プロジェクトのルートディレクトリ内に`.gitlab/insights.yml`という名前のファイルを作成します。  \n2. グループにインサイトを設定する場合：  \n   * グループに属するプロジェクト内に`.gitlab/insights.yml`ファイルを作成します。  \n   * グループの**設定 > 一般**の順に移動します。\n   * **分析セクション**を展開し、**インサイトセクション**を見つけます。  \n   * 設定ファイルが含まれるプロジェクトを選択し、変更を保存します。\n\n`.gitlab/insights.yml`は、レポート内のチャートの構造や順序に加え、表示されるチャートの形式を定義できるYAMLファイルです。各チャートの定義には、タイトル、説明、タイプ、データソースやフィルタリング条件を指定するクエリなどのパラメータを含められます。\n\n\nインサイトを表示するには、プロジェクトまたはグループで**分析 > インサイト**の順に移動します。\n\n\n![デフォルトのインサイトダッシュボードの表示](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097218/Blog/Content%20Images/Blog/Content%20Images/image3_aHR0cHM6_1750097217972.png)\n\n\n## マージリクエストインサイトのカスタマイズ\n\n\nデフォルトビューでは有用な情報が未加工で表示されますが、インサイトダッシュボードをカスタマイズすれば、各マージリクエストの担当チームや、マージリクエストごとに解決された問題の種類など、より多くの情報が明らかになります。\n\n\n## スクワッドおよび要件タイプごとのマージリクエストインサイト\n\n\nGitLabでスクワッドの生産性を測定するのは、難しい場合があります。GitLabのグループとサブグループの構造が、実際のスクワッドの構成と完全に一致していない場合は特に困難です。こういった課題に対処し、効果的にスクワッドの生産性を追跡する方法をご紹介します。\n\n\n### **スクワッドベースのメトリクスの設定**\n\n\n1.\n**ラベルの作成**：スクワッドごと（例：`squad::alpha`、`squad::beta`）および要件タイプ（例：`type::bug`、`type::feature`、`type::maintenance`）ごとに範囲指定した一意のラベルを作成します。\n\n\n\u003C!-- 空白行 -->\n\n\u003Cfigure class=\"video_container\">\n  \u003Ciframe src=\"https://www.youtube.com/embed/ZUOzORIUJeU?si=T8eHeGizS3blYFHB\" frameborder=\"0\" allowfullscreen=\"true\"> \u003C/iframe>\n\u003C/figure>\n\n\u003C!-- 空白行 -->\n\n\n2.\n**ラベルの適用**：所属するプロジェクトやグループに関係なく、各スクワッドが対応するすべてのイシューおよびマージリクエストにこれらのスクワッドラベルを一貫して適用します。  \n\n\n\u003C!-- 空白行 -->\n\n\u003Cfigure class=\"video_container\">\n  \u003Ciframe src=\"https://www.youtube.com/embed/fJ9entEBZG8?si=MlM6mKirEdkmwDDJ\" frameborder=\"0\" allowfullscreen=\"true\"> \u003C/iframe>\n\u003C/figure>\n\n\u003C!-- 空白行 -->\n\n\n**ヒント**：  \n   * GitLab APIを使用すれば、既存のMR（未解決、マージ済み、完了したもの）に一括でラベルを適用できます。  \n   * GitLab CIパイプラインの一環としてラベルの追加や削除、更新を行えます。  \n   * GitLabトリアージボットを活用すれば、ラベルの適用プロセスを自動化できます。  \n\n3.\nダッシュボードの設定：プロジェクトのリポジトリに`.gitlab/insights.yml`ファイルを作成し、チームやタイプ固有のマージリクエストインサイト用のカスタムチャートを定義します。\n\n\n```\n\n\n## Default Merge Requests insights.yml \n\nmergeRequests:\n  title: Merge requests dashboard\n  charts:\n    - title: Merge requests merged per week \n      type: bar\n      query:\n        data_source: issuables\n        params:\n          issuable_type: merge_request\n          issuable_state: merged\n          group_by: week\n          period_limit: 12\n    - title: Merge requests merged per month\n      type: bar\n      query:\n        data_source: issuables\n        params:\n          issuable_type: merge_request\n          issuable_state: merged\n          group_by: month\n          period_limit: 3\n\n## Per-teams Merge Requests insights.yml\n\nmergeRequestsTeams:\n  title: Merge requests dashboard per teams\n  charts:\n    - title: Merge requests merged per week \n      type: stacked-bar\n      query:\n        data_source: issuables\n        params:\n          issuable_type: merge_request\n          issuable_state: merged\n          group_by: week\n          period_limit: 12\n          collection_labels:\n            - squad::alpha\n            - squad::beta\n    - title: Merge requests merged per month\n      type: stacked-bar\n      query:\n        data_source: issuables\n        params:\n          issuable_type: merge_request\n          issuable_state: merged\n          group_by: month\n          period_limit: 3\n          collection_labels:\n            - squad::alpha\n            - squad::beta\n\n## Per-teams and Type Merge Requests insights.yml\n\nmergeRequestsTeamsAndType:\n  title: Per Teams and Type - Merge requests dashboard\n  charts:\n    - title: Merge requests merged per week - Squad Alpha\n      type: stacked-bar\n      query:\n        data_source: issuables\n        params:\n          issuable_type: merge_request\n          issuable_state: merged\n          filter_labels: squad::alpha\n          collection_labels:\n            - type::feature\n            - type::bug\n            - type::maintenance\n          group_by: week\n          period_limit: 12\n    - title: Merge requests merged per month - Squad Alpha\n      type: stacked-bar\n      query:\n        data_source: issuables\n        params:\n          issuable_type: merge_request\n          issuable_state: merged\n          filter_labels: squad::alpha\n          collection_labels:\n            - type::feature\n            - type::bug\n            - type::maintenance\n          group_by: month\n          period_limit: 3\n    - title: Merge requests merged per week - Squad Beta\n      type: stacked-bar\n      query:\n        data_source: issuables\n        params:\n          issuable_type: merge_request\n          issuable_state: merged\n          filter_labels: squad::beta\n          collection_labels:\n            - type::feature\n            - type::bug\n            - type::maintenance\n          group_by: week\n          period_limit: 12\n    - title: Merge requests merged per month - Squad Beta\n      type: stacked-bar\n      query:\n        data_source: issuables\n        params:\n          issuable_type: merge_request\n          issuable_state: merged\n          filter_labels: squad::beta\n          collection_labels:\n            - type::feature\n            - type::bug\n            - type::maintenance\n          group_by: month\n          period_limit: 3\n\n```\n\n\nこのようにカスタマイズすることで、チームおよび要件タイプごとのマージリクエストアクティビティがわかりやく表示される、役に立つ情報満載のダッシュボードを作成できます。それをもとに、長期的なトレンドの可視化、各スクワッドのパフォーマンスの比較、スクワット単位での作業タイプの分布の分析を行えます。\n\n\n![チームおよび要件タイプごとにMRアクティビティが表示されているダッシュボード](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097218/Blog/Content%20Images/Blog/Content%20Images/image2_aHR0cHM6_1750097217972.png)\n\n\n![各スクワッドのパフォーマンスが比較されているダッシュボード](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097218/Blog/Content%20Images/Blog/Content%20Images/image1_aHR0cHM6_1750097217974.png)\n\n\n## 無料トライアルで今すぐスタート！\n\n\nGitLabには、GitLabインサイト以外にも、メトリクスおよび分析関連のツールや機能が多数あります。ぜひ以下のバリューストリーム管理製品ツアーで、バリューストリーム分析やCI/CD分析、コードレビューメトリクスなど、GitLabの強力な分析機能の全容をご確認ください。\n\n\n[![バリューストリーム管理製品ツアー](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097218/Blog/Content%20Images/Blog/Content%20Images/Screenshot_2024-11-20_at_12.28.08_PM_aHR0cHM6_1750097217976.png)](https://gitlab.navattic.com/vsm)\n\n\n> カスタムメトリクスの作成を始める準備ができたら、[今すぐGitLab\nUltimateの無料トライアル](https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com%2F)にご登録ください。データドリブンのDevSecOpsを最大限に活用しましょう。\n\n\n## 関連リンク\n\n-\n[スケジュール設定できるレポート生成ツールでバリューストリーム管理を簡単に実施](https://about.gitlab.com/blog/new-scheduled-reports-generation-tool-simplifies-value-stream-management/)\n\n-\n[新たなGitLabバリューストリームダッシュボードを使い始める](https://about.gitlab.com/blog/getting-started-with-value-streams-dashboard/)\n\n-\n[AIインパクト分析ダッシュボードによるAIのROI測定](https://about.gitlab.com/ja-jp/blog/developing-gitlab-duo-ai-impact-analytics-dashboard-measures-the-roi-of-ai/)\n",[110,781,14,805,802,1005],{"slug":1167,"featured":92,"template":679},"data-driven-devsecops-exploring-gitlab-insights-dashboards","content:ja-jp:blog:data-driven-devsecops-exploring-gitlab-insights-dashboards.yml","Data Driven Devsecops Exploring Gitlab Insights Dashboards","ja-jp/blog/data-driven-devsecops-exploring-gitlab-insights-dashboards.yml","ja-jp/blog/data-driven-devsecops-exploring-gitlab-insights-dashboards",{"_path":1173,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1174,"content":1180,"config":1185,"_id":1187,"_type":16,"title":1188,"_source":18,"_file":1189,"_stem":1190,"_extension":21},"/ja-jp/blog/gitlab-17-5-released",{"title":1175,"description":1176,"ogTitle":1175,"ogDescription":1176,"noIndex":6,"ogImage":1177,"ogUrl":1178,"ogSiteName":770,"ogType":771,"canonicalUrls":1178,"schema":1179},"GitLab 17.5リリース","GitLab 17.5でリリースした最新機能をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662166/Blog/Hero%20Images/17_5-cover-image.png","https://about.gitlab.com/blog/gitlab-17-5-released","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 17.5リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2024-10-17\",\n      }",{"title":1175,"description":1176,"authors":1181,"heroImage":1177,"date":1182,"body":1183,"category":14,"tags":1184,"updatedDate":1083},[676],"2024-10-17","**GitLab Duo Quick Chat AIコードアシストを含むGitLab 17.5をリリース**\n\nこのたび、GitLab 17.5のリリースを発表しました。このリリースでは、GitLab Duo Quick ChatによるIDEでのコードアシスト、GitLab Duoコード提案のセルフホストモデル、コード提案使用状況のエクスポート、GitLab Duo ChatとのMRに関する対話など、さまざまな機能が追加されました。\n\nこれらの機能は、今回のリリースに含まれる125件以上の改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLab 17.5には、GitLabコミュニティのユーザーから200件以上ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。\n\n来月のリリースで予定されている内容を先取りするには、17.6リリースのキックオフビデオも視聴できる[今後のリリースページ](https://about.gitlab.com/direction/kickoff/)をご覧ください。  \n\n> [GitLab Duo Quick Chat AIコードアシストを含むGitLab 17.5をリリースしました。](http://twitter.com/share?text=GitLab+17.5+released+with+Duo+Quick+Chat+AI+code+assistance.&url=https://about.gitlab.com/releases/2024/10/17/gitlab-17-5-released/&hashtags=)クリックしてSNSで共有しましょう！\n\n## 今月のMost Valuable Person（[MVP](https://about.gitlab.com/community/mvp/)）は[Jim Ender](https://gitlab.com/jimender2)さんが受賞\n\nMVPには、誰もが[GitLabコミュニティのコントリビューターを推薦](https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490)できます。積極的に活動している候補者を応援したり、他の誰かをノミネートしてみませんか。🙌\n\nJimさんは、GitLabにおいて[100件近くのバックログイシューを解決する](https://gitlab.com/gitlab-org/gitlab/-/issues/?sort=updated_desc&state=closed&assignee_username%5B%5D=Jimender2&first_page_size=100)取り組みを主導したことが評価されました。興味深いディスカッションが繰り広げられる毎週恒例のペアリングセッションに精力的に参加しています。さらに、[GitLab Discord Community](https://discord.gg/gitlab)のユーザーを支援し、GitLabサポートリクエストのトラブルシューティングや新規コントリビューターへの指導なども行っています。Jimさんは、重要なインフラやERPシステム向けのソフトウェアを開発している産業テクノロジー企業に勤務しています。\n\n「小さな貢献であっても積み重なれば、プロジェクトが改善されます。ドキュメンテーションに関するコントリビュートのような小さなものでも、誰かの役に立ちます。新機能のすべてを開発する必要はないんです」とJimさんは述べています。\n\nJimさんを推薦したのは、GitLabのコントリビューターサクセスチームに所属する[スタッフフルスタックエンジニア、](https://gitlab.com/leetickett-gitlab)Lee Tickettです。「より幅広いコミュニティからの参加を促すために、イシューのトリアージおよびキュレーション作業は、私にとって最重要項目のひとつです。Jimさんはそのための道筋をつけてくれています」とLeeは言います。\n\nLeeに続き、GitLabのコントリビューターサクセスチームのシニアプログラムマネージャーである[Daniel Murphy](https://gitlab.com/daniel-murphy)も、Jimさんを推薦しました。「新規コントリビューターに対するJimさんの多大なるサポートとオンボーディングの際の丁寧な説明のおかげで、GitLabを共同開発するコミュニティとして成長できています」\n\n「Jimさんの[マージリクエスト](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163849)をレビューしましたが、素晴らしかったです！」と、GitLabのシニアフロントエンドエンジニアである[Vanessa Otto](https://gitlab.com/vanessaotto)は振り返ります。「Jimさんからはすぐに返答があり、提案した内容を即座に理解して、スムーズに実装してくださいました。Jimさんの効率的かつ明瞭なアプローチには感銘を受けました」\n\nJimさんを始め、GitLabにコントリビュートしてくださっているオープンソースコミュニティのみなさまに心から感謝します！\n\n## GitLab 17.5でリリースされた主な改善点\n\n### GitLab Duo Quick Chatの導入 \nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise  \nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nGitLab Duo Quick Chatが導入されました。これは、コードを編集している画面上で動作するように設計されたAI搭載のチャットです。Quick Chatは編集中の行で直接動作するため、デベロッパーはコードから一切離れずにリアルタイムでサポートを得られます。リファクタリング、バグの修正、テストの作成など、どのような状況であっても、Quick Chatによりその場で提案や説明が提供されるため、ツール間の移動による頭の切り替えが不要になり、完全に集中し続けることができます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/gitlab_duo_chat/#in-the-editor-window)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/15218)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/5JbAM5g2VbQ?si=P58oz2nyORFl538a\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### GitLab Duoコード提案でのセルフホストモデルの使用(ベータ版)\n\nSaaS: -  \nSelf-Managed: Ultimate、Duo Enterprise\n\nGitLab承認の大規模言語モデル（LLM）を、自社のインフラ環境でホストして、コード提案のデータソースとして設定できるようになりました。この機能はベータ版で、UltimateとDuo Enterpriseのサブスクリプションをお持ちであれば、Self-ManagedのGItLab環境でご利用いただけます。  \nセルフホストモデルでは、オンプレミスまたはプライベートクラウドでホストしたモデルを使用して、コード提案を有効化できます。現在は、vLLMまたはAWS Bedrockを介してオープンソースのMistralモデルをサポートしています。セルフホストモデルを利用することで、エンタープライズレベルのデータ主権とプライバシーを維持しながら、生成AIの力を活用できます。  \n[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/498376)から、ぜひフィードバックをお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/self_hosted_models/)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/498114)\n\n![self-hosted-beta](https://res.cloudinary.com/about-gitlab-com/image/upload/v1749687327/Blog/Content%20Images/self-hosted-beta.png)\n\n### コード提案使用状況のエクスポート\n\nSaaS: Ultimate、Duo Enterprise  \nSelf-Managed: Ultimate、Duo Enterprise\n\nこれまでAIインパクト分析は、GitLab.comでGitLab Duo Enterpriseを利用するお客様、およびGitLab Self-ManagedでClickHouseとのインテグレーションを利用するお客様に対してのみ提供されていました。さらに、デフォルトのメトリクスは集約されたものだけでした。\n\n本リリースでは、生データのコード提案イベントをGraphQL APIからエクスポートできるようになりました。この機能を使用してデータをデータ分析ツールにインポートすれば、提案のサイズ、言語、利用者など、より多くの側面から採用率に関するより詳しいインサイトを得られます。ClickHouseに生データは保存されないため、一部のAIインパクト分析メトリクスは、GitLab DedicatedやSelf-Managedを含めたGitLabの全デプロイで利用可能です。  \n\n[ドキュメント](https://docs.gitlab.com/ee/api/graphql/reference/#codesuggestionevent)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/477231)\n\n### GitLab Duo Chatとのマージリクエストに関する対話\n\nSaaS: Ultimate、Duo Enterprise  \nSelf-Managed: Ultimate、Duo Enterprise\n\nみなさまからのお寄せいただいたフィードバックに応え、GitLab Duo Chatがマージリクエストを認識するようになりました。レビュアーや作成者がマージリクエストについてDuo Chatとチャットで会話することで、マージリクエストについてすばやく調べたり、次に何をすべきかを確認したりできるようになりました。手順は簡単で、マージリクエストを開いてからDuo Chatを開き、会話を始めるだけです。\n\nこの新機能は既存の機能を補完するものです。GitLab Duoに「[コード変更のサマリー](https://docs.gitlab.com/ee/user/project/merge_requests/duo_in_merge_requests.html#generate-a-description-by-summarizing-code-changes)の作成を依頼することでマージリクエストの説明をすばやく入力でき、レビュアーはマージリクエストの概要を把握できます。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/gitlab_duo_chat/examples#ask-about-a-specific-merge-request)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/464587)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/4muvSFuWWL4?si=Btvvv1S9Evh3g8I1\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### ブランチルール編集機能の強化\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate \n\nGitLab 15.10では、[ブランチ関連の設定とルールが1つのページで表示されるようになり](https://about.gitlab.com/releases/2023/03/22/gitlab-15-10-released/#see-all-branch-related-settings-together)ました。これにより、複数の設定が適用されたプロジェクトの構成を簡単に理解できるようになりました。\n\n本リリースでは、この機能をベースに、ブランチ保護、承認ルール、外部ステータスチェック設定を含め、特定のブランチルールをこのページ上で直接変更できるようになりました。これらの新機能を土台としてブランチ設定の[継続的な改善](https://gitlab.com/groups/gitlab-org/-/epics/12546)に取り組み、将来的にはさらに柔軟に設定できるようになる予定です。\n\nぜひ新機能を活用し、フィードバックをお寄せください。フィードバックは、専用の[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/486050)からお寄せいただけます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/repository/branches/branch_rules.html#create-a-branch-rule)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/8075)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/lUteytQOiYc?si=qx9YoimLTKVmnQ0_\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### スイッチボードにGitLab Dedicatedテナント概要を追加\n\nSaaS: -\nSelf-Managed: Ultimate\n\nスイッチボードに新たにテナント概要が追加され、GitLab Dedicatedインスタンスに関する重要な情報にまとめてアクセスできるようになりました。\n\n今回のリリースで初めて追加されたこの機能により、現在お使いのGitLabのバージョン、インスタンスのURL、今後予定されているメンテナンス期間と過去のメンテナンス期間の日時をすべてテナント概要ページで確認できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/dedicated/tenant_overview.html) \n[イシュー](https://about.gitlab.com/direction/saas-platforms/switchboard/#roadmap)\n\n![switchboard-tenant-overview](https://about.gitlab.com//about.gitlab.com/images/17_5/switchboard-tenant-overview.png)\n\n### シークレットプッシュ保護の一般提供を開始\n\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\nGitLab Ultimateをご利用のすべてのお客様を対象に、シークレットプッシュ保護の一般提供を開始しました。\n\nキーやAPIトークンなどのシークレット情報が誤ってGitリポジトリにコミットされた場合、リポジトリにアクセスできる人なら誰でも、情報を悪用する目的でそのシークレットのユーザーになりすますことができます。シークレットが流出すると、時間とコストがかかり、企業の評判に悪影響が及ぶ可能性があります。シークレットプッシュ保護は、そもそもシークレットがプッシュされないように保護することで、修正時間を削減し、リスクを軽減します。\n\nシークレットプッシュ保護機能は、ベータ版から改善されました。Git CLIを用いてコミットをプッシュすると、変更点（差分）のみを対象にスキャンが実行され、シークレットの有無を確認するようになりました。また、誤検出を防ぐために、パスやルール、特定の値を除外する実験的サポートも追加されました。\n\n詳細については、[ブログ記事（英語）](https://about.gitlab.com/blog/prevent-secret-leaks-in-source-code-with-gitlab-secret-push-protection)を参照してください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/secret_detection/secret_push_protection)  \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/13107)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/SFVuKx3hwNI?si=T2WPfTiMVHnzslEX\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### GitLab.comで認証情報インベントリが利用可能に\n\nSaaS: Ultimate  \nSelf-Managed: -\n\nGitLab.comのトップレベルグループのオーナーは、認証情報インベントリをご利用いただけるようになりました。認証情報インベントリでは、グループで使用される[エンタープライズユーザーの](https://docs.gitlab.com/ee/user/enterprise_user/)パーソナルアクセストークンとSSH鍵を閲覧できます。また、認証情報の失効や削除に加え、追加情報の表示も可能です。これまで認証情報インベントリは、GitLab Self-Managedの管理者のみが利用できました。\n\nグループオーナーは認証情報インベントリを使用することで、自分の管理権限内にある認証情報を把握できるため、可視性が高まります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/credentials_inventory.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/297441)\n\n![govern_credentialsinventory](https://about.gitlab.com//about.gitlab.com/images/17_5/govern_credentialsinventory.png)\n\n### 依存関係リストでのコンポーネントによるフィルタリング\n\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\nGitLabで、特定の依存関係コンポーネントをすばやくフィルタリングして、グループまたはプロジェクトで使用されているかどうかを特定できるようになりました。特定のパッケージやバージョンが使用されているかを確認するためだけに、手動で全リストを調べるのは面倒で、時間もかかります。新たに依存関係リストで**コンポーネントごとにフィルタリング**を行えるようになったことで、脆弱な依存関係を取り出して、アプリケーションのリスクを評価できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/dependency_list/#filter-dependency-list)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/12652)\n\n![component_filter_dependency_list](https://about.gitlab.com//about.gitlab.com/images/17_5/component_filter_dependency_list.png)\n\n## GitLab 17.5でリリースされたその他の改善点\n\n### コーディングエクスペリエンスの向上！Windows用Visual StudioでDuo Chatが利用可能に\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise  \nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nDuo ChatがWindows用Visual Studioにシームレスに統合され、開発ワークフローを強化できるようになりました。AI搭載機能を活用してコードの説明、改良、デバッグ、テストの作成をすべてリアルタイムで行うDuo ChatをVisual Studio上で使用できることで、コーディングエクスペリエンスを向上させます。この統合により、使い慣れた開発環境で直接Duo Chatの高度なAIツールを活用できるため、生産性が向上するとともに、より迅速かつ効率的に問題解決を行えます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/gitlab_duo_chat/index.html#use-gitlab-duo-chat-in-visual-studio-for-windows)  \n[エピック](https://gitlab.com/groups/gitlab-org/editor-extensions/-/epics/77)\n\n![duo-chat-visual-studio](https://about.gitlab.com//about.gitlab.com/images/17_5/duo-chat-visual-studio.png)\n\n### コンテナレジストリタグ操作時のAPIパフォーマンスの向上\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLab Self-Managedインスタンス用のコンテナレジストリAPIが大幅に改善されました。GitLab 17.5リリースで、`:id/registry/repositories/:repository_id/tags`エンドポイントにキーセットページネーションが実装され、GitLab.comでは既に提供されていた機能をご利用いただけるようになりました。この機能強化は、APIパフォーマンスの改善と、デプロイ方法に左右されることなくGitLabで一貫したエクスペリエンスを提供することを目的とした、継続的な取り組みの一環です。\n\nキーセットページネーションを使用すると、大規模なデータセットをより効率的に処理でき、結果としてパフォーマンスとユーザーエクスペリエンスが向上します。このアップデートにより、リポジトリタグをよりスムーズに操作できるようになったため、特に大規模なコンテナレジストリを管理する場合に特に効果的です。この機能を使用するには、Self-Managedインスタンスを[次世代のコンテナレジストリ](https://docs.gitlab.com/ee/administration/packages/container_registry_metadata_database.html)にアップグレードする必要があります。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/container_registry.html#list-registry-repository-tags)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/482399)\n\n### REST APIを使用したエージェントおよびGitOps環境の設定\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nポッドのステータスとFluxの調整は、GitLab環境のUIから確認できます。ただし、この方法では、GraphQLかUIを使用しない限り必要な設定を確認できないため、スケーリングが難しい一面があります。本リリースから、Kubernetes用エージェントの設定と、環境ごとのネームスペースやFluxリソースの設定を行うREST APIサポートがGitLabに含まれるようになりました。動的な環境のサポートをさらに強化するために、[イシュー467912](https://gitlab.com/gitlab-org/gitlab/-/issues/467912)では、CI/CDパイプラインでこれらの設定のサポートを実装することが提案されています。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/environments.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/412677)\n\n### ファイアウォールで保護されたGitLabインストール環境向けにKubernetesインテグレーションをサポート\n\nSaaS: -\nSelf-Managed: Ultimate\n\nこれまで、Kubernetes用エージェントを使用できるのは、GitLabインスタンスにKubernetesクラスターが接続可能な場合のみでした。このような制限があることで、たとえばプライベートネットワーク上やファイアウォール経由でGitLabを実行しているお客様は、エージェントを使用できませんでした。GitLab 17.5からは、適切に設定された`agentk`インスタンスが接続開始を待機していることを前提とすることで、GitLabからクラスターとGitLab間の接続を開始できます。\n\n最初の接続が確立されると、エージェントの全機能を利用できるようになります。本リリースでは、クラスターからの初期化に関しては変更はありません。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/clusters/agent/#receptive-agents) \n\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/437014)\n\n### GitLab UIからGitOpsの調整を一時停止または再開できるように\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nFluxを使用する中で、これまでに自動調整やドリフトの修正をすぐに停止せざるを得なかったことや、`HelmRelease`をトリガーして手動で削除したリソースを同期したいと思ったことはないでしょうか。このようなアクションは、Fluxの一時停止および再開機能を使用することで最も効果的に実現できます。これまではFlux CLIが利用可能な最良の方法でしたが、この方法では、ツール間の移動により頭の切り替えが発生するだけでなく、適切なリソースが対象となるようにコマンドをいくつか実行する必要がありました。GitLab 17.5では、Kubernetes用に組み込まれたダッシュボードから調整を一時停止または再開できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html#suspend-or-resume-flux-reconciliation)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/478380)\n\n### プロジェクトレベルでのコンプライアンスセンターへのアクセス\n\nSaaS: Premium、Ultimate  \nSelf-Managed: Premium、Ultimate\n\nこれまで、コンプライアンス センターは最上位のグループとサブグループでのみ利用可能でした。\n\n今回のリリースでは、プロジェクトにもコンプライアンスセンターが追加されました。プロジェクトレベルでのコンプライアンスセンターでは、特定のプロジェクト関連のチェックおよび違反の閲覧のみ行えます。\n\nフレームワークを追加または編集する場合は、プロジェクトレベルではなく、トップレベルグループのコンプライアンスセンターにアクセスする必要があります。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/compliance_center/)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/441350)\n\n### エンタープライズユーザーのパスワード認証を無効にする\nSaaS: Premium、Ultimate  \nSelf-Managed: -\n\nエンタープライズユーザーは、ユーザー名とパスワードを使用してローカルアカウントで認証を行えます。本リリースでは、グループオーナーが、グループのエンタープライズユーザーのパスワード認証を無効にできるようになりました。パスワード認証が無効になっている場合、エンタープライズユーザーは、グループのSAML Identity Providerを使用してGitLabのWeb UIで認証するか、もしくはパーソナルアクセストークンを使用して、GitLab APIやGitでHTTP基本認証を行えます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/saml_sso/#disable-password-authentication-for-enterprise-users)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/373718)\n\n### コンプライアンスパイプラインからセキュリティポリシーへの移行プロセス\n\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\nGitLab 17.3では、コンプライアンスパイプラインの非推奨化と、GitLab18.0リリースでの削除を発表しました。コンプライアンスパイプラインの代わりに、GitLab 17.2でリリースされたパイプライン実行ポリシータイプを使用することが推奨されます。\n\n既存のコンプライアンスパイプラインからパイプライン実行ポリシータイプへの移行を促すために、本リリースでは次の目的で警告バナーが表示されます。\n\n* コンプライアンスパイプラインの非推奨化に関するユーザーへの通知  \n* 既存のコンプライアンスパイプラインからパイプライン実行ポリシータイプへの移行を促すプロンプトと移行のガイド付きワークフローの提供\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/compliance_pipelines.html#pipeline-execution-policies-migration)  \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/11275)\n\n### APIを使用したトークンの関連付けの表示\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nトークンがどのグループ、サブグループ、またはプロジェクトに関連付けられているかを確認できるようになりました。これにより、トークンの有効期限や失効による影響を判断し、どこでトークンが使用可能であるかを把握しやすくなります。 \n\n[ドキュメント](https://docs.gitlab.com/ee/api/personal_access_tokens.html#list-token-associations) \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/466046)\n\n### GitLabチャートの改善\n\nSaaS: -  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLab 17.5では、NGINX Ingressコントローラーのバージョンがアップデートされました。本リリースに含まれる`nginx-controller`コンテナイメージのバージョンは1.11.2です。なお、新しいコントローラーではEndpointSliceが使用されており、EndpointSliceへのアクセスにはRBACルールが必要になるため、新しいRBAC要件が含まれていますのでご注意ください。\n\n[ドキュメント](https://docs.gitlab.com/charts/)\n\n### オムニバスの改善  \nSaaS: -  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLab 17.5では、単一ノードのインストール時にPostgreSQLをバージョン14.xから16.xにアップグレードできるようになりました。自動アップグレードは有効でないため、手動でPostgreSQLのアップグレードを実行する必要があります。\n\n[ドキュメント](https://docs.gitlab.com/omnibus/)\n\n### GitLab Runner 17.5\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\n本日、GitLab Runner 17.5もリリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドエージェントです。GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。\n\n**新機能：**\n\n* [スコープ指定された一時的な認証情報によるAWS S3のマルチパートアップロードをサポート](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/26921)\n\n**バグの修正：**\n\n* [すべてのサービスコンテナが実行されていなければ、追加サービスを含むジョブが完了しない](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38035)問題  \n* [Amazon Linux 2で`gitlab-runner-fips-17.4.0-1`パッケージの実行に失敗し、glibcエラーが返される](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/38034)問題  \n* [S3 Express One Zoneエンドポイントを使用していると、Amazon S3でキャッシュが機能しない](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37394)問題  \n* [`DOCKER_AUTH_CONFIG`変数に複数のレジストリが指定されている場合、ジョブがベースイメージをプルできない](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/28073)問題\n\n[ドキュメント](https://docs.gitlab.com/runner)  \n\n### 保護パッケージを使用して依存関係を守る\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: -\n\n本リリースでは、NPMの保護パッケージが新たにサポートされました。こちらは、GitLabパッケージレジストリのセキュリティと安定性を強化することを目的として設計された新機能です。急速に変化するソフトウェア開発の現場においては、パッケージを誤って変更または削除してしまった場合、開発プロセス全体に混乱が生じる可能性があります。保護パッケージを使用すると、意図せぬ変更を防いで最も重要な依存関係を保護できます。\n\nGitLab 17.5からは、保護ルールを作成してNPMパッケージを保護します。保護ルールの条件をパッケージが満たした場合、指定されたユーザーのみがパッケージを更新または削除できます。この機能を使用すると、手動による監視の必要性を減らすことにより、意図せぬ変更の防止、規制要件へのコンプライアンスの強化、ワークフローの効率化を実現できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/packages/package_registry/package_protection_rules.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/472655)\n\n![protected_npm_packages](https://about.gitlab.com//about.gitlab.com/images/17_5/protected_npm_packages.png)\n\n### GitLabのKubernetesインテグレーションが簡単に立ち上げ可能に\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLabは、[Kubernetes用エージェント](https://docs.gitlab.com/ee/user/clusters/agent/)と[Fluxとのインテグレーション](https://docs.gitlab.com/ee/user/clusters/agent/gitops.html)を通じて、柔軟で信頼性が高く、安全なGitOpsサポートを提供していますがGitLabでFluxを立ち上げてKubernetes用エージェントを設定するには、さまざまなドキュメントを読み、GitLab UIとターミナル間で移動して作業を行う必要がありました。本リリースでは、GitLabに[`glab cluster agent bootstrap`コマンド](https://gitlab.com/gitlab-org/cli/-/blob/main/docs/source/cluster/agent/bootstrap.md)が追加され、インストール済みのFlux上に簡単にエージェントをインストールできるようになりました。これにより、たった2つの簡単なコマンドでFluxとエージェントを設定できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/clusters/agent/install/#bootstrap-the-agent-with-flux-support-recommended)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/473987)  \n\n### Kubernetesリソースイベントのストリーミング\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLabでは、Kubernetes用のダッシュボード上に、ポッドとポッドのログストリームのすべてがリアルタイムで表示されます。GitLab 17.4では、リソース固有のイベント情報の静的リストをUIから確認できるようになりました。今回のリリースではKubernetes用のダッシュボードをさらに強化し、クラスター内で発生した受信イベントをストリーミングできるようにしました。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/470042)  \n\n### 高度なSASTでのRubyのサポートとルールの更新\n\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\nGitLabの高度なSASTのサポート対象として、新たにRubyを追加しました。Rubyを対象にファイルや機能をまたがるスキャンを実行するには、[高度なSASTを有効にしてください](https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast/#enabling-advanced-sast-scanning)。高度なSASTがすでに有効な場合は、Rubyのサポートも自動的に有効になります。\n\nまた、[高度なSASTでサポートされる他の言語](https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast/#supported-languages)の検出ルールを改善するために、次のアップデートを先月リリースしました。\n\n* 新たなJavaパストラバーサル、Javaコマンドインジェクション、JavaScriptパストラバーサルの脆弱性を検出  \n* 脆弱性の種類をより具体的かつ一貫性を持って特定できるようにCWEマッピングを更新  \n* パストラバーサルの脆弱性の重大度を増加\n\n高度なSASTが各言語で検出できる脆弱性の種類を確認するには、新しい[高度なSASTのカバレッジページ](https://docs.gitlab.com/ee/user/application_security/sast/advanced_sast_coverage/)を参照してください。\n\n高度なSASTの詳細については、[先月の一般提供の発表に関するブログ記事](https://about.gitlab.com/blog/gitlab-advanced-sast-is-now-generally-available)でご覧いただけます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast/)  \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/14425)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/457969) \n\n### セキュリティポリシーのスコープにグループを追加\n\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\nセキュリティポリシーのスコープにグループやサブグループを含められるようになりました。これは既存のオプションを拡張するもので、グループやサブグループ内の全プロジェクト、定義されたプロジェクトリストに記載されているプロジェクト、コンプライアンスフレームワークラベルのリストと一致するプロジェクトを対象にできるようになりました。\n\n今回のアップデートにより、グループ全体でポリシーを有効にする際の柔軟性がさらに高まります。また、必要に応じてスコープに例外を適用して、プロジェクトにポリシーが適用されないようにすることも可能です。\n\nこの改善以外にも、セキュリティポリシープロジェクトをリンクし、スコープをきめ細かく設定してポリシーを実施するプロセスを簡素化する、さまざまな[機能強化](https://gitlab.com/groups/gitlab-org/-/epics/5446)を今後も行っていく予定です。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#security-policy-scopes)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/14149)\n\n![scope-all-projects-in-linked-groups](https://about.gitlab.com//about.gitlab.com/images/17_5/scope-all-projects-in-linked-groups.png)\n\n### ユーザー管理サマリーの改善\nSaaS: -  \nSelf-Managed: Free、Premium、Ultimate\n\n管理者エリアで、インスタンス上のユーザーに関する次の重要な情報のサマリーが表示されるようになりました。\n\n* 承認保留中  \n* 2要素認証なし  \n* 管理者\n\n管理者は、サマリービューで何人のユーザーが上記の状態にあるかをすばやく確認し、フィルタリングできるため、ユーザ管理の効率性が向上します。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/account/create_accounts.html#create-users-in-admin-area)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/456332)\n\n![govern_admin_statcards](https://about.gitlab.com//about.gitlab.com/images/17_5/govern_admin_statcards.png)\n\n### SAMLシングルサインオンの適用が選択可能に\nSaaS: -  \nSelf-Managed: Free、Premium、Ultimate\n\nこれまでは、SAML SSOが有効な場合、グループはSSOの強制を選択できました。その場合、すべてのユーザーがグループにアクセスする際に、SSO認証を使用する必要がありました。しかし、グループによっては、従業員やグループメンバーに対してはSSOを実施してセキュリティを確保したい一方で、外部のコラボレーターや請負業者に関してはSSOなしでグループにアクセスできるようにしたい場合もあります。\n\n本リリースでは、SAML SSOが有効なグループでは、SAML IDを持つすべてのメンバーに対して自動的にSSOが実施されますが、SAML IDを持たないグループメンバーには、SSOの実施が明示的に有効化されていない限り、SSOの使用が求められません。\n\nメンバーがSAML IDを持っているとみなされるのは、次のいずれかまたは両方に該当する場合です。\n\n* GitLabグループのシングルサインオンURLを使用してGitLabにサインイン済みの場合  \n* SCIMを用いてプロビジョニングされた場合\n\nSSOの強制の選択をスムーズに動作させるには、「**このグループのSAML認証を有効にします**」チェックボックスをオンにする前に、SAMLの設定が正しく動作しているかどうかを確認してください。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/settings/sign_in_restrictions.html#disable-password-authentication-for-users-with-an-sso-identity)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/382917)  \n\n## 実験的な機能\n\n### JavaとPythonにおける静的な到達可能性のサポート\n本リリースでは、コンポジション解析でJavaとPythonにおける静的な到達可能性をサポートしました。\n\n静的な到達可能性のサポートにより、ソフトウェアコンポジション解析（SCA）で得られる結果がより充実します。静的な到達可能性機能では、GitLabの高度なSASTによってプロジェクトのソースコードをスキャンし、使用中のオープンソースの依存関係を特定します。  \n\nトリアージや修正に関する意思決定を行う上で、静的な到達可能性によって生成されたデータを参考にできます。また、静的な到達可能性データをCVSS（共通脆弱性評価システム）スコアと一緒に使用すれば、より焦点を絞って脆弱性を確認することも可能です。\n\nこの機能は実験的に導入されました。有効にするには、`.gitlab-ci.yml`ファイルまたは[プロジェクト変数](https://docs.gitlab.com/ee/ci/variables/#for-a-project)で`STATIC_REACHABILITY_ENABLED`変数を設定してください。この機能の詳細については、[解説動画](https://www.youtube-nocookie.com/embed/_SVhcfcy9N8)をご視聴ください。\n\nみなさまからのフィードバックをお待ちしています。ご質問やコメントがある場合、またはGitLabチームとのやり取りをご希望の場合は、こちらの[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/498526)をご覧ください。  \n\n## バグ修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験をお届けすることを約束します。\n\n以下のリンクをクリックして、17.5のバグ修正、パフォーマンスの強化、UI改善についてすべてご覧ください。\n\n* [バグの修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.5)  \n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.5)  \n* [UIの改善](https://papercuts.gitlab.com/?milestone=17.5)\n\n## 非推奨事項 \n\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n-   [スキャン実行ポリシーで\\`scan\\`アクションを制限](https://docs.gitlab.com/ee/update/deprecations.html#limited-scan-actions-in-a-scan-execution-policy)  \n- [\\`mergeTrainIndex\\`および\\`mergeTrainsCount\\` GraphQLフィールドを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#mergetrainindex-and-mergetrainscount-graphql-fields-deprecated)\n- [GitLab Runner Docker Machine Executorを非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#gitlab-runner-docker-machine-executor-is-deprecated)\n- [\\`ciUsedMinutes\\` GraphQLフィールドの名前を\\`ciDuration\\`に変更](https://docs.gitlab.com/ee/update/deprecations.html#ciusedminutes-graphql-field-renamed-to-ciduration)\n- [\\`ciJobTokenScopeAddProject\\`のGraphQL変異を非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#cijobtokenscopeaddproject-graphql-mutation-is-deprecated)\n- [ネームスペースの\\`add\\_on\\_purchase\\` GraphQLフィールドを\\`add\\_on\\_purchases\\`に置き換え](https://docs.gitlab.com/ee/update/deprecations.html#replace-namespace-add_on_purchase-graphql-field-with-add_on_purchases)\n\n### 削除された機能と破壊的な変更\n\n削除されたすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n### GitLab 17.5へのアップグレードに関する重要なお知らせ\n\n* Gitlab 17.5以降のバージョンでは、Ruby 3.2が必要です。管理者が[ソースからインストール](https://docs.gitlab.com/ee/install/installation.html)して、GitLab 17.5以降のバージョンにアップグレードする場合、Ruby 3.2以降のバージョンが必要となります。現時点では、それ以外にユーザーによる対応は必要ありません。この変更が必要な理由は、2025年3月31日をもってRuby 3.1のサポートが終了し、公式のアップデートやサポートが提供されなくなるためです。GitLabでは、今後も[現在の安定バージョンのリリースに加え、セキュリティ修正を過去2回の月例リリース用に移植する](https://docs.gitlab.com/ee/policy/maintenance.html)方針を継続します。\n\nGitLab 17.5には、NGINXコントローラーコンテナイメージの新バージョン（`1.11.2`）が含まれています。新しいコントローラーではEndpointSliceが使用されており、アクセスにはRBACルールが必要となります。アップグレードする前に、新しいコンテナイメージを設定してください。  \n\n### 変更履歴\n\n変更内容をすべて表示するには、次のページから変更履歴を確認してください。\n\n* [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)   \n* [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)   \n* [VS CodeのGitLabワークフロー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)   \n* [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n### インストール\n\nGitLabを新規にインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/ja-jp/install/)をご覧ください。\n\n### 更新事項 \n\n[更新ページ](https://about.gitlab.com/ja-jp/update/)をご覧ください。\n\n### ご不明な点がある場合\n\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスして質問を投稿してください。\n\n### GitLabサブスクリプションプラン\n\n* [Freeプラン](https://about.gitlab.com/ja-jp/pricing/) \n\n  個人ユーザー向けの永久無料機能を提供\n\n* [Premiumプラン](https://about.gitlab.com/ja-jp/pricing/premium/) \n\n  チームの生産性と調整を強化\n\n* [Ultimateプラン](https://about.gitlab.com/ja-jp/pricing/ultimate/) \n\n*監修：知念 梨果 [@rikachinen](https://gitlab.com/rikachinen)\n（GitLab合同会社 カスタマーサクセス本部 カスタマーサクセスエンジニア）*\n\n### 過去の日本語リリース情報\n\n### 過去の日本語リリース情報\n\n- [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n- [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n- [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n- [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)  \n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)  \n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)  \n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)  \n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)  \n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)\n",[672,671,14],{"slug":1186,"featured":92,"template":679},"gitlab-17-5-released","content:ja-jp:blog:gitlab-17-5-released.yml","Gitlab 17 5 Released","ja-jp/blog/gitlab-17-5-released.yml","ja-jp/blog/gitlab-17-5-released",{"_path":1192,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1193,"content":1199,"config":1205,"_id":1207,"_type":16,"title":1208,"_source":18,"_file":1209,"_stem":1210,"_extension":21},"/ja-jp/blog/gitlab-17-4-released",{"title":1194,"description":1195,"ogTitle":1194,"ogDescription":1195,"noIndex":6,"ogImage":1196,"ogUrl":1197,"ogSiteName":770,"ogType":771,"canonicalUrls":1197,"schema":1198},"GitLab 17.4リリース","GitLab 17.4でリリースした最新機能をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662149/Blog/Hero%20Images/17_4-cover-image.png","https://about.gitlab.com/blog/gitlab-17-4-released","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 17.4リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2024-09-19\",\n      }",{"title":1194,"description":1195,"authors":1200,"heroImage":1196,"date":1201,"body":1202,"category":14,"tags":1203,"updatedDate":1204},[676],"2024-09-19","**よりコンテキストを意識するようになったGitLab Duoを含むGitLab 17.4をリリース**\n\nこのたび、開いているタブの内容を使用してよりコンテキストを意識するようになったコード提案、すべてのチェックに合格した場合の自動マージ、Web IDEの拡張機能マーケットプレース、一般提供が開始された高度なSASTなど、さまざまな機能を備えたGitLab 17.4のリリースを発表しました！\n\nこれらの機能は、今回のリリースに含まれる140件以上の改善点のほんの一部です。役に立つ最新情報をすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLab 17.4には、GitLabコミュニティのユーザーから220件以上ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。\n\n来月のリリースで予定されている内容を先取りするには、17.5リリースのキックオフビデオも視聴できる[今後のリリースページ](https://about.gitlab.com/direction/kickoff/)をご覧ください。\n\n> [GitLab Duoでコンテキストの改善を実現したGitLab 17.4がリリースされました。](http://twitter.com/share?text=GitLab+17.4+released+with+improved+context+in+GitLab+Duo&url=https://about.gitlab.com/releases/2024/09/19/gitlab-17-4-released/&hashtags=)クリックしてSNSで共有しましょう！\n\n## **今月のMost Valuable Person（[MVP](https://about.gitlab.com/community/mvp/)）は[Archish Thakkar](https://gitlab.com/archish27)さんが受賞**\n\nMVPには、誰でも[GitLabコミュニティのコントリビューターを推薦](https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490)できます。積極的に活動している候補者を応援したり、他の誰かをノミネートしてみませんか。🙌\n\nArchish Thakkarさんは、今年特に活躍しているGitLabのコントリビューターの1人で、[46のイシューをクローズ](https://gitlab.com/groups/gitlab-org/-/issues/?sort=created_date&state=closed&assignee_username%5B%5D=archish27&first_page_size=100)し、[119ものマージリクエストをマージ](https://gitlab.com/groups/gitlab-org/-/merge_requests?assignee_username%5B%5D=archish27&first_page_size=100&sort=created_date&state=merged)してくれました。このようなすばらしい実績により、Archishさんは過去2回の[GitLabハッカソン](https://gitlab-community.gitlab.io/community-projects/merge-request-leaderboard/?&createdAfter=2024-08-26&createdBefore=2024-09-02&mergedBefore=2024-10-03&label=Hackathon)で1位に選ばれました。Archishさんは、[Middleware社の](https://middleware.io/)ソフトウェアエンジニアであり、オープンソースコントリビューターとして積極的に活動しています。\n\nArchishさんを推薦したのは、GitLabにおいてエンジニアリングの生産性を担当するスタッフバックエンドエンジニア、[Peter Leitzen](https://gitlab.com/splattael)です。GitLabのスタッフバックエンドエンジニアである[Max Woolf](https://gitlab.com/mwoolf)と、シニアバックエンドエンジニアの[James Nutt](https://gitlab.com/jnutt)も、Archishさんを推薦することに賛同しました。過去2か月間でArchishさんのコントリビュート件数は増加しており、GitLabのコードベースの改善、QoL（クオリティオブライフ）に関する複数の修正へのコントリビュート、技術的負債の削減への取り組みなど、一貫して優れた取り組みを行っています。\n\nこの場を借りて、GitLabを共同開発してくださっているArchishさん、そしてGitLabのオープンソースコントリビューターの方々に心から感謝します！\n\n## **GitLab 17.4でリリースされた主な改善点**\n\n### **開いているタブの内容をもとに、よりコンテキストを意識するようになったGitLab Duoのコード提案**\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise    \nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise   \n\n開いている他のタブの内容を使用し、よりコンテキストを意識したコード提案を提供して、コーディングワークフローを向上させます。\nこのコード提案の改善により、開いているエディタタブの内容を使用して、より関連性が高く正確なコード提案を提供できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/repository/code_suggestions/#use-open-tabs-as-context)  \n[イシュー](https://gitlab.com/gitlab-org/editor-extensions/gitlab-lsp/-/issues/206)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_4/open-tabs.gif\">\n\n### **すべてのチェックに合格した場合に自動マージ**\n\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: Free、Premium、Ultimate\n\nマージリクエストがマージ可能になるには、多数の必須チェックに合格する必要があります。これらのチェックには、承認、未解決のスレッド、パイプライン、その他満たす必要のある項目が含まれます。コードをマージする担当者にとって、これらのイベントをすべて追跡し、マージリクエストがマージ可能になったかどうかについてどのタイミングで改めて確認すればよいかを判断するのは難しいものです。\n\nGitLabでは本リリースから、マージリクエストのすべてのチェックで**自動マージが利用可能**になりました。自動マージを使用すると、マージを行えるユーザーなら誰でも、必要なすべてのチェックに合格する前であっても**自動マージ**が行われるようにマージリクエストを設定できます。マージ リクエストのライフサイクルが進み、前回不合格となったチェックに合格すると、自動的にマージリクエストがマージされます。\n\nこの改善により、マージリクエストのワークフローを高速化できるようになりました。[イシュー438395](https://gitlab.com/gitlab-org/gitlab/-/issues/438395)でこの機能についてのフィードバックをぜひお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/merge_requests/auto_merge.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/8128)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/10874)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/UbqAYizAFAk?si=GxUlLjpyNWmw-q3z\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### **Web IDEで拡張機能マーケットプレースが利用可能に**\n\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: -\n\nGitLab.comのWeb IDEに拡張機能マーケットプレースが登場しました。拡張機能マーケットプレースでは、サードパーティの拡張機能を検索、インストール、管理できるため、開発体験が向上します。拡張機能によってはローカル実行環境が必要となり、Webのみのバージョンと互換性がないものもありますが、何千種類もの拡張機能から選択して、生産性を向上させたり、ワークフローをカスタマイズしたりできます。\n\nデフォルトでは、拡張機能マーケットプレースは無効になっています。利用を開始するには、[ユーザー環境設定](https://gitlab.com/-/profile/preferences)の**インテグレーション**セクションで拡張機能マーケットプレースを有効にします。[エンタープライズユーザー](https://docs.gitlab.com/ee/user/enterprise_user/)の場合は、トップレベルグループのオーナーロールを持つユーザーのみが拡張機能マーケットプレースを有効にできます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/web_ide/index.html#extension-marketplace)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/11769)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_4/extensions-marketplace.png\">\n\n### **ワークスペースでのsudoアクセスをセキュアに管理**\n\nSaaS: Premium、Ultimate\n\nSelf-Managed: Premium、Ultimate\n\nワークスペースにおけるsudoアクセスが設定可能になり、開発環境で依存関係を直接インストール、設定、実行することがこれまで以上に簡単になりました。シームレスな開発環境を実現するために、次の3つのセキュアな方法が実装されています。\n- Sysbox\n- Kataコンテナ\n- ユーザーネームスペース\nこの機能により、ワークフローやプロジェクトのニーズに合わせて環境を完全にカスタマイズできます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/workspace/configuration.html#configure-sudo-access-for-a-workspace)\n\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13983)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_4/sudo-access.gif\">\n\n### **Kubernetesリソースイベントの一覧表示**\n\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: Free、Premium、Ultimate\n\nGitLabでは、ポッドとポッドのログストリームがリアルタイムで表示されます。ただし、これまでUIではリソース固有のイベント情報が表示されていなかったため、[Kubernetes](https://about.gitlab.com/ja-jp/blog/what-is-kubernetes/)のデプロイをデバッグするにはサードパーティ製のツールを使用する必要がありました。今回のリリースでは、[Kubernetes用ダッシュボード](https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html)のリソース詳細ビューに「イベント」を追加しました。\n\nUIに「イベント」を追加するのは今回が初めてです。現在、リソース詳細ビューを開くと、イベント情報が更新されます。リアルタイムのイベントストリーミングの開発については、[イシュー470042](https://gitlab.com/gitlab-org/gitlab/-/issues/470042)で追跡できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/470041)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_4/kubernetes-events-list.png\">\n\n### **ワイルドカードDNSを使用しないGitLab Pagesの一般提供を開始**\n\nSaaS: -\n\nSelf-Managed: Free、Premium、Ultimate\n\nこれまでGitLab Pagesプロジェクトを作成するには、`name.example.io`や`name.pages.example.io`といった形式のドメインが必要でした。この要件を満たすには、ワイルドカードDNSレコードとTLS証明書の設定を行う必要がありました。今回のリリースでは、DNSワイルドカードを使用しないGitLab Pagesプロジェクトの作成機能を、ベータ版から一般提供へ移行しました。\n\nワイルドカード証明書の要件をなくすことで、GitLab Pages関連の管理上のオーバーヘッドが軽減されます。なお、一部のお客様は、組織におけるワイルドカードDNSレコードや証明書に関する制限のため、GitLab Pagesをご利用いただけません。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/pages/#pages-domain-without-wildcard-dns)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13404)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/z230iB-hJ3A?si=paf8_1xxggwVgsZT\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### **GitLab Pagesの並行デプロイ（ベータ版）**\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\n\n本リリースでは、GitLab Pagesの並行デプロイ（ベータ版）が導入されました。これにより、GitLab Pagesサイトの変更を簡単にプレビューし、並列デプロイを管理できるようになりました。この機能強化により、新しいアイデアの検証をスムーズに行えるため、自信を持ってサイトをテストして改良できます。問題を早期に発見することでGitLab Pagesの基盤が最適な状態となり、その上に構築された公開中のサイトを安定して洗練された状態に維持することができます。\n\nまた並列デプロイは、アプリケーションやWebサイトの複数の言語バージョンをデプロイするために、多言語化を行う場合も役立ちます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/pages/#parallel-deployments)  \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/10914)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_4/pages_parallel_deployments_beta.png\">\n\n### **GitLab Duo Chatによるイシューディスカッションサマリー生成**\n\nSaaS: Ultimate、Duo Enterprise\u003Cbr>\nSelf-Managed: Ultimate、Duo Enterprise\n\n長時間繰り広げられてきたイシューのディスカッションの内容を把握するには、かなりの時間がかかります。今回のリリースでは、AIによるイシューディスカッションサマリー生成機能がDuo Chatに統合され、GitLab.com、Self-Managed、およびDedicatedをご利用のお客様を対象に一般公開されました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/discussions/index.html#summarize-issue-discussions-with-duo-chat) \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/454550)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_4/plan-summarize-discussions-with-duo.png\">\n\n### **高度なSASTの一般提供を開始**\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\n\nGitLab Ultimateプランをご利用のすべてのお客様を対象に、高度な静的アプリケーションセキュリティテスト（SAST）スキャナーの一般提供を開始しました。\n\n高度なSASTは、今年初めに[Oxeyeから得た](https://about.gitlab.com/blog/oxeye-joins-gitlab-to-advance-application-security-capabilities/)技術を利用して新たに開発されたスキャナーです。独自の検出エンジンとともに、社内でのセキュリティ研究によって得られたルールを使用して、ファーストパーティコードに潜む悪用可能な脆弱性を特定します。これにより、より正確なスキャン結果が得られるため、デベロッパーやセキュリティチームは、誤検出の結果によるノイズを選別する必要がなくなります。\n\nGitLab 17.4には新しいスキャンエンジンに加え、次の機能が含まれます。\n\n* 脆弱性がファイルや関数を横断してどのように広がるかを追跡できる新しい[コードフロービュー](https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#vulnerability-code-flow)\n\n* これまでのGitLab SASTスキャナーからの既存の結果を高度なSASTに「引き継げる」ようにする自動移行\n\n詳細については、[一般提供の発表に関するブログ記事](https://about.gitlab.com/blog/gitlab-advanced-sast-is-now-generally-available)を参照してください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/sast/gitlab_advanced_sast.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/466322)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_4/secure-advanced-sast-code-flow.png\">\n\n### **CI/CD変数の値をUIで非表示にできるように**\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\n\nときには、プロジェクト設定に保存された変数の値を誰にも見られたくない場合があります。CI/CD変数の作成時に、新しく「**マスクして非表示**」を選択できるようになりました。このオプションを選択すると、CI/CD設定のUIで変数の値が永久的にマスクされ、作成後は誰にも表示されなくなるため、データが誰かに見られる危険性を低下できます。\n\n[ドキュメント](https://new.docs.gitlab.com/ci/variables/#define-a-cicd-variable-in-the-ui)\n\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/29674)\n\u003Cimg src=\"https://about.gitlab.com/images/17_4/masked_and_hidden.png\">\n\n## **GitLab 17.4のその他の改善**\n\n### **Webhookリクエストの冪等キー**\n\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: Free、Premium、Ultimate\n\n本リリースから、Webhookリクエストのヘッダーで冪等キーをサポートします。冪等キーは、Webhookの再試行を複数回行っても一貫性が保たれる一意のIDであり、Webhookクライアントが再試行を検出できるようにします。統合においてWebhookの効果の冪等性を保つには、`Idempotency-Key`ヘッダーを使用してください。\n\nこの場を借りて、[コミュニティにコントリビュート](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/160952)してくれた[Van](https://gitlab.com/van.m.anderson)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/integrations/webhooks.html#delivery-headers)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/388692)\n\n### **Wikiのサイドバーのサイズが変更可能に**\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: Free、Premium、Ultimate\n\nWikiのサイドバーを調整して、長めのページタイトルを表示できるようになりました。これにより、全体的にコンテンツが見つけやすくなりました。Wikiコンテンツが充実するにつれて、階層が複雑になったり表示されるページが膨大になったりしますが、サイドバーのサイズ変更が可能になったことでWikiの運用が効率的になり、管理、閲覧しやすくなりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/wiki/)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154167)\n\n### **コードインテリジェンス用CI/CDコンポーネント**\n\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: Free、Premium、Ultimate\n\nGitLabのコードインテリジェンスは、リポジトリを閲覧する際のコードナビゲーション機能を提供します。コードナビゲーションを開始する際は、CI/CDジョブを設定する必要があるため、複雑になりがちです。正しい出力と成果物を得るには、この作業を行う際にカスタムスクリプトが必要になる場合があります。\n\nGitLabでは本リリースから、簡単に設定を行えるように、公式の[コードインテリジェンス用CI/CDコンポーネント](https://gitlab.com/explore/catalog/components/code-intelligence)をサポートするようになりました。[コンポーネントの使い方](https://docs.gitlab.com/ee/ci/components/index.html#use-a-component)の手順に従って、このコンポーネントをプロジェクトに追加してください。これにより、GitLabでのコードインテリジェンスの導入が大幅に簡素化されます。\n\n現在、このコンポーネントでは次の言語をサポートしています。\n\n* Goバージョン1.21以降\n\n* TypeScriptまたはJavaScript\n\nこのコンポーネントの対応言語の拡大を検討するために、[利用可能なSCIP Indexer](https://github.com/sourcegraph/scip?tab=readme-ov-file#tools-using-scip)の評価を今後も続ける予定です。対応言語の追加に興味がある場合は、[コードインテリジェンスコンポーネント](https://gitlab.com/components/code-intelligence)プロジェクトでマージリクエストを作成してください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/code_intelligence.html#with-the-cicd-component)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/480401)  \n\n### **GitLab Runner 17.4**\n\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: Free、Premium、Ultimate\n\n本日、GitLab Runner 17.4もリリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、拡張性の高いビルドエージェントです。GitLab Runnerは、GitLabに組み込まれたオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。\n\n新機能：\n\n* [Azure Compute用GitLab Runnerフリートプラグイン（一般公開）](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29223)\n\nバグの修正：\n\n* [Kubernetes executorジョブが完了前にキャンセルされた場合、ジョブログの`after_script` セクションに`step_script`のすべての内容が表示される](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37952)\n\nすべての変更の一覧は、GitLab Runnerの[変更履歴](https://gitlab.com/gitlab-org/gitlab-runner/blob/17-4-stable/CHANGELOG.md)で確認できます。\n\n[ドキュメント](https://docs.gitlab.com/runner)\n\n### **保護された環境への非デプロイジョブが手動ジョブにならないように**\n\nSaaS: Premium、Ultimate    \nSelf-Managed: Premium、Ultimate\n\n実装上の問題により、保護された環境で`action: prepare`、`action: verify`、`action: access`ジョブを実行した場合、手動ジョブになります。これらのジョブを実行するには、手動での操作が必要となりますが、追加の承認は必要ありません。\n\n[イシュー390025](https://gitlab.com/gitlab-org/gitlab/-/issues/390025)では、これらのジョブが手動ジョブにならないようにするために、実装に修正を加えることを提案しています。この提案が実装された後で現在の挙動が維持されるようにするには、[明示的にジョブを手動に設定する](https://docs.gitlab.com/ee/ci/jobs/job_control.html#types-of-manual-jobs)必要があります。\n\n現時点では、`prevent_blocking_non_deployment_jobs`機能フラグを有効にすることで、新しい実装に移行できます。\n\n破壊的な変更はすべて、`environment.action: prepare | verify | access`値の挙動を区別するために提案されています。`environment.action: access`キーワードを指定すると、現在の動作に最も近い形で維持されます。\n\n将来的に互換性の問題が発生しないように、これらのキーワードの使用方法を今すぐ見直してください。提案の詳細については、次のイシューを参照してください。\n\n* [イシュー437132](https://gitlab.com/gitlab-org/gitlab/-/issues/437132)\n\n* [イシュー437133](https://gitlab.com/gitlab-org/gitlab/-/issues/437133)\n\n* [イシュー437142](https://gitlab.com/gitlab-org/gitlab/-/issues/437142)\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/jobs/job_control.html#types-of-manual-jobs)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/390025)\n\n### **削除されたSASTアナライザーの自動クリーンアップ**\n\nSaaS: Ultimate    \nSelf-Managed: Ultimate\n\n[GitLab 17.0](https://docs.gitlab.com/ee/update/deprecations.html#sast-analyzer-coverage-changing-in-gitlab-170)、[16.0](https://docs.gitlab.com/ee/update/deprecations.html#sast-analyzer-coverage-changing-in-gitlab-160)、[15.4](https://docs.gitlab.com/ee/update/deprecations.html#sast-analyzer-consolidation-and-cicd-template-changes)ではGitLab SASTを効率化し、より少ない個別のアナライザーでコードの脆弱性をスキャンできるようにしました。\n\n本リリースでは、GitLab 17.3.1以降のバージョンにアップグレードした後で、データ移行を一度だけ行えば、[サポートが終了したアナライザー](https://docs.gitlab.com/ee/user/application_security/sast/#end-of-supported-analyzers)の検出対象である脆弱性が自動的に修正されるようになりました。これにより、脆弱性レポートがクリーンアップされるため、最新のアナライザーによって検出された脆弱性に集中して対応できます。\n\nデータ移行を行うと、確認または却下されていない脆弱性のみが修正されます。[Semgrepベースのスキャンに自動的に変換](https://docs.gitlab.com/ee/user/application_security/sast/analyzers/#transition-to-semgrep-based-scanning)された脆弱性には、影響は生じません。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/sast/#end-of-supported-analyzers)\n\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/444926)\n\n### **CycloneDX 1.6のSBOMのインジェストをサポート**\n\nSaaS: Ultimate    \nSelf-Managed: Ultimate\n\nGitLab 15.3では、CycloneDX SBOMの[インジェスト](https://docs.gitlab.com/ee/ci/yaml/artifacts_reports.html#artifactsreportscyclonedx)がサポートされました。\n\nこの度、GitLab 17.4では、CycloneDXバージョン1.6のSBOMのインジェストを新たにサポートするようになりました。\n\n現時点では、ハードウェア（HBOM）、サービス（SaaSBOM）、AI/MLモデル（AI/ML-BOM）関連のフィールドはサポート対象外です。これらのBOMの関連データを含むSBOMは処理されるものの、データは分析されず、ユーザーにも提示されません。こうした他の種類のBOMのサポートについては、[こちらのエピック](https://gitlab.com/groups/gitlab-org/-/epics/14989)で追跡されています。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/yaml/artifacts_reports.html#artifactsreportscyclonedx)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/472837)\n\n### **トークンの有効期限設定オプション**\n\nSaaS: -\n\nSelf-Managed: Free、Premium、Ultimate\n\n個人、プロジェクト、グループ用のアクセストークンに有効期限の設定を必須にするかどうかを、管理者が決められるようになりました。この設定を管理者が無効にした場合、新たに生成されるアクセストークンでは有効期限の設定が不要になります。デフォルトではこの設定は有効になっており、有効期限を設定する際は許可されている最大有効期間よりも短くする必要があります。この設定は、GitLab 16.11以降のバージョンで利用可能です。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/settings/account_and_limit_settings.html#require-expiration-dates-for-new-access-tokens)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/470192)\n\n### **パイプライン実行ポリシーで競合するジョブ名のサフィックスをサポート**\n\nSaaS: Ultimate    \nSelf-Managed: Ultimate\n\n[17.2リリースで追加されたパイプライン実行ポリシー](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)が拡張され、ポリシー作成者はジョブ名が重複した場合に適切に処理されるよう、パイプライン実行ポリシーを設定できるようになりました。パイプライン実行ポリシーの`policy.yml`で、次のオプションを設定できるようになりました。\n\n* `suffix: on_conflict`：重複が適切に処理されるように、ポリシーのジョブ名を変更するよう、ポリシーを設定します。今後は、これがデフォルトの動作です。\n\n* `suffix: never`：すべてのジョブ名が一意となるように強制し、重複が発生した場合はパイプラインが失敗します。17.2以降のバージョンでは、これがデフォルトの動作でした。\n\nこの改善により、パイプライン実行ポリシー内でセキュリティとコンプライアンスのジョブが必ず実行されるようになると同時に、下流工程のデベロッパーに不要な影響を及ぼすことのないように防ぐことができます。\n\n次の機能拡張では、ポリシーエディタ内でこの設定オプションを導入する予定です。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/pipeline_execution_policies.html#pipeline-execution-policy-schema)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/473189)  \n\n### **オムニバスの改善**\n\nSaaS: -\n\nSelf-Managed: Free、Premium、Ultimate\n\nGitLab 17.4を新規インストールすると、デフォルトでPostgreSQL 16が含まれます。\n\nGitLab 17.7では、OpenSSL V3が含まれます。これは、TLS証明書の112ビット以上の暗号化とともに、送信接続用のTLS 1.2以上の最低要件を満たしていない外部統合設定のオムニバスインスタンスに影響を与えます。ご自身のインスタンスが影響を受けるか等の詳細を確認したい場合は、[OpenSSLのアップグレードに関するドキュメント](https://docs.gitlab.com/omnibus/settings/ssl/openssl_3.html)を参照してください。\n\n[ドキュメント](https://docs.gitlab.com/omnibus/)\n\n### **グループAPIでドメインごとにグループアクセスを制限**\n\nSaaS: Premium、Ultimate    \nSelf-Managed: Premium、Ultimate\n\nこれまでは、ドメイン制限はUIでグループレベルでのみしか追加できませんでした。本リリースでは、グループAPIに追加された`allowed_email_domains_list`属性を使用してドメイン制限を行えるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/groups.html#update-group)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/351494)\n\n### **失敗したWebhookリクエストをAPIから再送信可能に**\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: Free、Premium、Ultimate\n\nGitLabではこれまで、Webhookリクエストの再送信機能をUIでのみ提供していましたが、リクエストが多数失敗した場合、この方法は非効率的でした。\n\n本リリースでは、コミュニティメンバーからのコントリビュートにより、失敗したWebhookリクエストをプログラムによって処理できるように、再送信用のAPIエンドポイントが追加されました。\n\n* [プロジェクトのWebhookリクエスト](https://docs.gitlab.com/ee/api/projects.html#resend-project-hook-event)\n\n* [グループのWebhookリクエスト](https://docs.gitlab.com/ee/api/groups.html#resend-group-hook-event)（PremiumおよびUltimateプランのみ）\n\n次の方法で再送信を行えるようになりました。\n\n1. [プロジェクトフック](https://docs.gitlab.com/ee/api/projects.html#get-project-hook-events)または[グループフック](https://docs.gitlab.com/ee/api/groups.html#get-group-hook-events)イベントのリストを取得します。\n\n2. リストをフィルタリングして、失敗したものを表示します。\n\n3. イベントの`id`を使用して再送信します。\n\nこの場を借りて、[コミュニティにコントリビュート](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151130)してくれた[Phawin](https://gitlab.com/lifez)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ee/api/projects.html#resend-project-hook-event)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/372826)\n\n### **JetBrains IDEでOAuthを使用してGitLab Duoを認証**\n\nSaaS: Premium、Ultimate\n\nSelf-Managed: Premium、Ultimate\n\nJetBrains用GitLab Duoプラグインの開始プロセスが、これまでよりも安全かつ効率的になりました。OAuthを使用して、すばやく安全にサインインできます。パーソナルアクセストークンは不要で、既存のワークフローとシームレスに統合されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/editor_extensions/jetbrains_ide/#configure-the-extension)  \n[エピック](https://gitlab.com/groups/gitlab-org/editor-extensions/-/epics/70)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/ZOTFWbpBBHI?si=Qv-BD5cy6KxMP2Tz\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### **リンクしたファイルがマージリクエスト内で最初に表示されるように**\n\nSaaS: Free、Premium、Ultimate\n\nSelf-Managed: Free、Premium、Ultimate\n\nマージリクエストで特定のファイルへのリンクを共有する目的は、通常はそのファイル内に含まれる内容を見てもらうことです。これまでマージリクエストでは、すべてのファイルが読み込まれてから、参照した特定の位置までスクロールする必要がありました。本リリースから、以下の方法でファイルに直リンクすることで、マージリクエストでの共同作業のスピードを効果的に向上させることができるようになりました。\n\n1. 最初に表示したいファイルを見つけます。ファイル名を右クリックして、リンクをコピーします。\n\n2. そのリンクにアクセスすると、選択したファイルがリストの一番上に表示されます。ファイルブラウザでは、ファイル名の横にリンクアイコンが表示されます。\n\nファイルのリンクに関するフィードバックは、[イシュー439582](https://gitlab.com/gitlab-org/gitlab/-/issues/439582)で投稿できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/merge_requests/changes.html#show-a-linked-file-first)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/387246)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_4/create-linked-files.png\">\n\n### **テストカバレッジ可視化のためにJaCoCoのサポートを開始（ベータ版）**\n\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: Free、Premium、Ultimate\n\nマージリクエスト内で、カバレッジ計測の標準として人気のあるJaCoCoのカバレッジレポートを使用できるようになりました。この機能はベータ版として提供されていますが、JaCoCoのカバレッジレポートをすぐに使用したい方なら誰でもテストできます。フィードバックがございましたら、ぜひ[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/479804)でお寄せください。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/testing/test_coverage_visualization/jacoco.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/227345)\n\n### **クラスターUIからFluxの調整をトリガー**\n\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: Free、Premium、Ultimate\n\n指定した間隔で調整がトリガーされるようにFluxを設定できるものの、状況によってはすぐに調整を行いたいこともあります。これまでのリリースでは、CI/CDパイプラインまたはコマンドラインから調整をトリガーできました。GitLab 17.4では、追加の設定なしでKubernetes用ダッシュボードから調整をトリガーできるようになりました。\n\n調整をトリガーするには、設定済みのダッシュボードに移動し、Fluxのステータスバッジを選択します。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/434248)\n\n### **シークレット検出でのAnthropic APIキーのサポート**\n\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: Free、Premium、Ultimate\n\nパイプラインとクライアントサイドのシークレット検出の両方で、[Anthropic](https://www.anthropic.com/) APIキーの検出をサポートしました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/secret_detection/pipeline/detected_secrets.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/481547)\n\n### **セキュリティポリシーにリンクされているプロジェクトのパイプライン実行YAMLファイルへの読み取りアクセスを許可**\n\nSaaS: Ultimate    \nSelf-Managed: Ultimate\n\nGitLab 17.4では、セキュリティポリシーの設定が追加され、リンクされているすべてのプロジェクトの`pipeline-execution.yml`ファイルへの読み取りアクセスを許可できるようになりました。この設定を使用すると、パイプラインの実行を行うユーザー、ボット、トークンをプロジェクト全体でグローバルかつより柔軟に指定できます。たとえば、グループやプロジェクトのアクセストークンがセキュリティポリシー構成を読み取り、パイプラインをトリガーできるようになります。引き続き、直接セキュリティポリシープロジェクトのリポジトリや[YAML](https://about.gitlab.com/ja-jp/blog/what-is-yaml/)を参照することはできません。この設定は、パイプラインの作成中にのみ使用できます。\n\n設定を行うには、共有したいセキュリティポリシープロジェクトに移動します。**「設定」 > 「一般」 > 「表示レベル、プロジェクトの機能、権限」**の順に選択し、**「パイプライン実行ポリシー」** までスクロールします。次に、**「セキュリティポリシープロジェクトソースとしてリンクされているプロジェクトに対して、このリポジトリへのアクセスを許可する」** を有効にします。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/469439)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_4/grant-access-to-spp.png\">\n\n### **複数のコンプライアンスフレームワークでの検索**\n\nSaaS: Premium、Ultimate\n\nSelf-Managed: Premium、Ultimate\n\nGitLab 17.3では、プロジェクトに複数のコンプライアンスフレームワークを追加できるようになりました。\n\n本リリースでは、複数のコンプライアンスフレームワークを指定して検索できるようになりました。これにより、複数のコンプライアンスフレームワークが設定されているプロジェクトをより簡単に検索できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/compliance_center/compliance_projects_report.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/462943)\n\n### **グループやプロジェクトメンバーのソース列の表示内容を改善**\n\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: Free、Premium、Ultimate    \n\nグループとプロジェクトのメンバーページでのソース列の表示内容を簡素化しました。ダイレクトメンバーは引き続き、`Direct member`として表示されます。継承メンバーの場合、`Inherited from`という文字列に続いて、グループ名が表示されるようになりました。グループが招待されたことで追加されたメンバーは、`Invited group`という文字列に続いて、グループ名が表示されます。また、本リリースから、グループが招待されて追加されたメンバーがその後に継承された場合、メンバーシップを管理するユーザーに必要な情報として、最後に発生したイベントが表示されるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/members/#membership-types)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/431066)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_4/data-stores_member-source.png\">\n\n### **グループまたはプロジェクトAPIを使用して、グループやプロジェクトに招待されたグループを一覧表示**\n\nSaaS: Free、Premium、Ultimate    \nSelf-Managed: Free、Premium、Ultimate\n\nグループAPIとプロジェクトAPIに新しいエンドポイントを追加しました。これにより、グループまたはプロジェクトに招待されたグループを取得できるようになりました。この機能は、グループまたはプロジェクトのメンバーページでのみ利用できます。このエンドポイントの追加により、グループやプロジェクトにおけるメンバーシップ管理がより簡単に自動化できるようになります。なお、このエンドポイントには、ユーザーあたり毎分60件のリクエストのレート制限が設定されています。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/groups.html#list-a-groups-invited-groups)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/465207)\n\n### **GitLab Duoシートの割り当てに関する通知メール**\n\nSaaS: -\n\nSelf-Managed: Premium、Ultimate、Duo Pro\n\nSelf-Managedインスタンスのユーザーには、GitLab Duoシートが割り当てられるとメールが届くようになりました。これまでは、ほかのユーザーに教えてもらうか、GitLab UIに新しい機能が表示されるようになったことに気付かない限り、シートが割り当てられたことはわかりませんでした。\n\n管理者は`duo_seat_assignment_email_for_sm`という名前の機能フラグを無効にすることで、このメール通知を無効にできます。\n\n[ドキュメント](https://docs.gitlab.com/ee/subscriptions/subscription-add-ons.html#assign-gitlab-duo-seats)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/164104)\n\n## **バグ修正、パフォーマンスの改善、UIの改善**\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験を届けることを約束します。\n\n以下のリンクをクリックして、17.4のバグ修正、パフォーマンス向上、UI改善についてすべてご覧ください。\n\n* [バグの修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.4)  \n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.4)  \n* [UIの改善](https://papercuts.gitlab.com/?milestone=17.4) \n\n## **非推奨事項**\n\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードをサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n-   [よく利用されるユーザー、プロジェクト、グループAPIのエンドポイントに対するレート制限](https://docs.gitlab.com/ee/update/deprecations.html#rate-limits-for-common-user-project-and-group-api-endpoints)  \n-   [\\`add\\_on\\_purchase\\` GraphQLフィールドの\\`add\\_on\\_purchases\\`への置き換え](https://docs.gitlab.com/ee/update/deprecations.html#replace-add_on_purchase-graphql-field-with-add_on_purchases)  \n-   [セキュアコンテナレジストリの一般利用の非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#public-use-of-secure-container-registries-is-deprecated)  \n-   [\\`heroku/builder:22\\`イメージの非推奨化](https://docs.gitlab.com/ee/update/deprecations.html#the-herokubuilder22-image-is-deprecated)\n\n## **削除された機能と破壊的な変更**\n\n削除されたすべての機能の一覧は、[GitLabのドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードをサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n## **GitLabのアップグレードに関する重要なお知らせ** \n\nバックグラウンドでの移行が完了されるようにするには、GitLab 17.4にアップグレードする前に、まずは[GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)にアップグレードする必要があります。  \n\n### **変更履歴**\n\n変更内容をすべて表示するには、以下のページから変更履歴を確認してください。\n\n* [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)   \n* [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)   \n* [VS CodeのGitLabワークフロー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)   \n* [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases) \n\n### **インストール**\n\nGitLabを新規にインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/ja-jp/install/)をご覧ください。\n\n### **更新**\n\n[更新ページ](https://about.gitlab.com/ja-jp/update/)を確認してください。\n\n### **ご不明な点がある場合**\n\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスして質問を投稿してください。\n\n### **GitLabサブスクリプションプラン**\n\n* [Freeプラン](https://about.gitlab.com/pricing/) \n\n  個人ユーザー向けの永久無料機能を提供\n\n* [Premiumプラン](https://about.gitlab.com/pricing/premium/) \n\n  チームの生産性と調整を強化\n\n* [Ultimateプラン](https://about.gitlab.com/pricing/ultimate/) \n\n  組織全体のセキュリティ、コンプライアンス、プランニングに対応\n\n> GitLabのすべての機能を[無料](https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/blog&glm_content=default-saas-trial)でお試しいただけます。\n\n*監修：佐々木 直晴 [@naosasaki](https://gitlab.com/naosasaki) \u003Cbr>\n（GitLab合同会社 ソリューションアーキテクト本部 シニアソリューションアーキテクト）*\n\n### 過去の日本語リリース情報\n\n### 過去の日本語リリース情報\n\n- [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n- [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n- [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n- [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)  \n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)  \n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)  \n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)  \n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)  \n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)\n",[672,671,14],"2025-01-07",{"slug":1206,"featured":92,"template":679},"gitlab-17-4-released","content:ja-jp:blog:gitlab-17-4-released.yml","Gitlab 17 4 Released","ja-jp/blog/gitlab-17-4-released.yml","ja-jp/blog/gitlab-17-4-released",{"_path":1212,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1213,"content":1219,"config":1228,"_id":1230,"_type":16,"title":1231,"_source":18,"_file":1232,"_stem":1233,"_extension":21},"/ja-jp/blog/tutorial-migrate-from-google-cloud-source-repositories-to-gitlab",{"title":1214,"description":1215,"ogTitle":1214,"ogDescription":1215,"noIndex":6,"ogImage":1216,"ogUrl":1217,"ogSiteName":770,"ogType":771,"canonicalUrls":1217,"schema":1218},"Google Cloud Source RepositoriesからGitLabへの移行ガイド【決定版】","Google CloudでCloud Source Repositoriesが非推奨になります。この記事では、Cloud Source RepositoriesのソースコードリポジトリをGitLabに移行する方法と、ベストプラクティスをご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097739/Blog/Hero%20Images/Blog/Hero%20Images/blog-image-template-1800x945%20%2813%29_1zdtbfPDHZVe6JC2AbdHmb_1750097738370.png","https://about.gitlab.com/blog/tutorial-migrate-from-google-cloud-source-repositories-to-gitlab","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Google Cloud Source RepositoriesからGitLabへの移行ガイド【決定版】\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Tsukasa Komatsubara\"},{\"@type\":\"Person\",\"name\":\"Regnard Raquedan\"}],\n        \"datePublished\": \"2024-08-28\",\n      }",{"title":1214,"description":1215,"authors":1220,"heroImage":1216,"date":1223,"body":1224,"category":14,"tags":1225,"updatedDate":1227},[1221,1222],"Tsukasa Komatsubara","Regnard Raquedan","2024-08-28","Google Cloudの[Cloud Source\nRepositories（またはCSR）が非推奨](https://cloud.google.com/source-repositories/docs/release-notes)（外部サイト）となることで、ソフトウェア開発者は自社のソースコードリポジトリ向けにフル機能を備えた代替製品を探す必要がでてきました。[Google\nCloudテクノロジーパートナー](https://cloud.google.com/find-a-partner/partner/gitlab-inc)（外部サイト）であり、包括的なDevSecOps機能を提供しているGitLabは、有力な選択肢の一つになるでしょう。\n\n\nこのガイドでは、GitLab.comを使用している方、またGoogle\nCloud上のSelf-Managedインスタンスを使用している方を対象に、CSRからGitLabにスムーズに移行するための手順をご紹介します。\n\n\n## GitLabがオススメの理由\n\nGoogle Cloud Source RepositoriesからGitLabへの移行がオススメな理由はお勧めの方法です。GitLabはGoogle\nCloudの戦略的パートナーであり、既存のインフラストラクチャと簡単かつシームレスに統合でき、次のような方法でお客様に価値をもたらします。\n\n- **DevSecOpsプラットフォームの統合**\n    - 計画からモニタリングまで、開発ライフサイクル全体を単一アプリケーションに統合します。これにより、個別ツールの乱立が解消され、劇的に生産性を向上できます。\n\n- **Google Cloudとのシームレスな統合**\n    - Google Kubernetes Engine（GKE）やCloud Build、Cloud Storageと簡単に接続できるため、Google Cloudエコシステム内でのスムーズな移行および効率的な運用が期待できます。\n\n- **高度なCI/CD機能**\n    - [Auto DevOps](https://docs.gitlab.com/ee/topics/autodevops/)を活用して、セキュリティスキャンからデプロイまであらゆるプロセスを自動化し、開発サイクルを加速します。\n- **業界屈指のAIによるコーディング支援**\n    - [GitLab Duo](https://about.gitlab.com/gitlab-duo/)に組み込まれたAIアシスト開発を活用することで、安全かつ効率的なコーディング環境を促進できます。\n\n## 前提要件\n\n\n移行を開始する前に、以下の2点を必ず用意してください。\n\n- GitLabアカウント：GitLab.comまたはセルフホスト型インスタンス上でアカウントを設定します。\n\n- GitLabプロジェクト：CSRリポジトリの移行先として、GitLabで空のプロジェクトを作成します。\n\n\n## 移行手順\n\n\n1.\n空のGitLabプロジェクトを作成する：このプロジェクトをCSRリポジトリの移行先として使用します。作成したプロジェクトは今のところ、空のままにしておきます。\n\n2.\nパーソナルアクセストークン（PAT）を生成する：GitLabの設定に移動し、`read_repository`と`write_repository`スコープを有効にして[PATを生成](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html)します。移行プロセス中にGitの操作を認証する際に、このトークンを使用します。\n\n3. Cloud Shellエディタでコードを編集する：CSRリポジトリで「コードを編集」ボタンをクリックして、Cloud\nShellエディタを開きます。続行するには、Cloud Shellを認証して「リポジトリを信頼する」を選択する必要があります。\n\n\n![Google Cloud\nShellエディタ](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097750/Blog/Content%20Images/Blog/Content%20Images/image1_aHR0cHM6_1750097750517.png)\n\n\n4. Gitのステータスを調べる：Cloud Shellで`git\nstatus`を実行して、現在のブランチを確認し、GitLabにプッシュする前にすべてが正常であることを確かめます。\n\n\n![Gitのステータスを調査する](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097750/Blog/Content%20Images/Blog/Content%20Images/image2_aHR0cHM6_1750097750518.png)\n\n\n5. リモートリポジトリを設定する：次のコマンドを実行して、GitLabプロジェクトをリモートリポジトリとして追加します。\n\n\n```\n\ngit remote add origin [GITLAB_PROJECT_URL]\n\n\n```\n\n\n6. `[GITLAB_PROJECT_URL]`の部分をGitLabプロジェクトの実際のURLに置き換えます。\n\nGitLabにプッシュする：最後に次のコマンドを実行して、ローカルリポジトリを[GitLabにプッシュ](https://about.gitlab.com/ja-jp/blog/mastering-the-basics-of-git-push-tag/)します。 \n\n\n```\n\ngit push -u origin [BRANCH_NAME]\n\n\n```\n\n\n7. `[BRANCH_NAME]`の部分を先程確認した現在のブランチ名に置き換えます。\n\nプロンプトが表示されたら、GitLabのユーザー名に加え、パスワードとしてPATを使用して認証を行い、プッシュを完了します。\n\n\n## ベストプラクティス\n\n\n- 開始前にバックアップする：移行プロセスをはじめる前に、必ずCSRリポジトリをバックアップしてください。\n\n- 移行後にテストする：ブランチやCI/CDパイプラインなど、リポジトリのすべての要素が想定どおりに、GitLabで動作することを確認しましょう。\n\n-\nGitLabの機能を活用する：[AI](https://about.gitlab.com/gitlab-duo/)や[CI/CD](https://docs.gitlab.com/ee/ci/)、[GitLab\nEnterprise Agile\nPlanning](https://about.gitlab.com/solutions/agile-delivery/)など、GitLabで提供される高度なDevSecOps機能を活用して、開発ワークフローを強化しましょう。\n\n\nGoogle Cloud Source\nRepositoriesからGitLabへの移行は容易に実施でき、単なるソースコードの管理以上に多くのメリットがあります。移行後にワークフローを強化したいと考えているデベロッパーにとって、GitLabをGoogle\nCloudと統合させることは非常に効果的な選択肢になると言えるでしょう。\n\n\n> [GitLabのGoogle\nCloudとの統合について詳しくは、こちら](https://about.gitlab.com/blog/gitlab-google-cloud-integrations-now-in-public-beta/)をお読みください。\n\n\n*監修：小松原 つかさ [@tkomatsubara](https://gitlab.com/tkomatsubara)\u003Cbr>\n\n（GitLab合同会社 ソリューションアーキテクト本部 シニアパートナーソリューションアーキテクト）*\n",[802,1226,781],"google","2024-09-12",{"slug":1229,"featured":6,"template":679},"tutorial-migrate-from-google-cloud-source-repositories-to-gitlab","content:ja-jp:blog:tutorial-migrate-from-google-cloud-source-repositories-to-gitlab.yml","Tutorial Migrate From Google Cloud Source Repositories To Gitlab","ja-jp/blog/tutorial-migrate-from-google-cloud-source-repositories-to-gitlab.yml","ja-jp/blog/tutorial-migrate-from-google-cloud-source-repositories-to-gitlab",{"_path":1235,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1236,"content":1242,"config":1252,"_id":1254,"_type":16,"title":1255,"_source":18,"_file":1256,"_stem":1257,"_extension":21},"/ja-jp/blog/ultimate-guide-to-migrating-from-aws-codecommit-to-gitlab",{"title":1237,"description":1238,"ogTitle":1237,"ogDescription":1238,"noIndex":6,"ogImage":1239,"ogUrl":1240,"ogSiteName":770,"ogType":771,"canonicalUrls":1240,"schema":1241},"【徹底解説！】AWS CodeCommitからGitLabへの移行ガイド","この記事では、AWSサービスからGitLabに移行し、DevSecOpsプラットフォームとシームレスに統合する方法をわかりやすく解説します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097810/Blog/Hero%20Images/Blog/Hero%20Images/blog-image-template-1800x945%20%2828%29_4mi0l4wzUa5VI4wtf8gInx_1750097810027.png","https://about.gitlab.com/blog/ultimate-guide-to-migrating-from-aws-codecommit-to-gitlab","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"【徹底解説！】AWS CodeCommitからGitLabへの移行ガイド\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Tsukasa Komatsubara\"},{\"@type\":\"Person\",\"name\":\"Darwin Sanoy\"},{\"@type\":\"Person\",\"name\":\"Samer Akkoub\"},{\"@type\":\"Person\",\"name\":\"Bart Zhang\"}],\n        \"datePublished\": \"2024-08-26\",\n      }",{"title":1237,"description":1238,"authors":1243,"heroImage":1239,"date":1247,"body":1248,"category":14,"tags":1249,"updatedDate":1251},[1221,1244,1245,1246],"Darwin Sanoy","Samer Akkoub","Bart Zhang","2024-08-26","2024年7月25日に、AWSが自社のCodeCommitサービスについて重要な発表を行いました。詳細はAWSの[公式ブログ記事（外部サイト）](https://aws.amazon.com/blogs/devops/how-to-migrate-your-aws-codecommit-repository-to-another-git-provider/)に記載されていますが、CodeCommitでの新規顧客の利用受付が終了することになりました。既存のお客様は引き続きサービスを利用できるものの、今後AWSが新機能を実装することはなく、セキュリティ、可用性、パフォーマンスの改善のみに注力するとのことです。\n\n今回の発表は、開発チームがリポジトリを別のGitプロバイダーに移行することを検討するきっかけとなっています。これらの変更をふまえ、お客様がGitLabに移行して他のAWSサービスと統合できるように、抱括的なガイドをご用意しました。\n\n__注：__ 移行に関するAWSの公式推奨事項の詳細については、[AWSのブログ記事（外部サイト）](https://aws.amazon.com/blogs/devops/how-to-migrate-your-aws-codecommit-repository-to-another-git-provider/)をご覧ください。\n\n## このガイドについて\n\nこのガイドでは、GitLabを使用していてAWSサービスとの統合を検討している開発チームや、AWSにホストされているGitリポジトリからGitLab.comに移行予定の開発チーム向けに包括的な情報を提供します。このガイドは次の3つの主要セクションで構成されています。\n\n* [GitLabへの並行移行](https://app.contentful.com/spaces/r9o86ar0p03f/entries/2tGP1LjJy6E5hzf9B24KIl?focusedField=body\\&focusedLocale=en-US\\#section-1-parallel-migration-to-gitlab)：リスクを最小限に抑えつつ、AWSにホストされている既存リポジトリからGitLab.comへ徐々に移行する方法について説明します。  \n* [AWS CodeBuildとの統合](https://app.contentful.com/spaces/r9o86ar0p03f/entries/2tGP1LjJy6E5hzf9B24KIl?focusedField=body\\&focusedLocale=en-US\\#section-2-integrating-gitlab-with-aws-codebuild)：GitLabリポジトリをAWS CodeBuildと統合し、強力な継続的インテグレーション（CI）環境を設定する手順を紹介します。  \n* [AWS CodePipelineとの統合](https://app.contentful.com/spaces/r9o86ar0p03f/entries/2tGP1LjJy6E5hzf9B24KIl?focusedField=body\\&focusedLocale=en-US\\#section-3-integrating-gitlab-with-aws-codepipeline)：効率的な継続的デリバリーパイプラインを構築するために、GitLabリポジトリをAWS CodePipelineと接続する方法について詳しく説明します。  \n* [CodePipelineとCodeStar Connectionsのダウンストリーム統合](https://app.contentful.com/spaces/r9o86ar0p03f/entries/2tGP1LjJy6E5hzf9B24KIl?focusedField=body\\&focusedLocale=en-US\\#section-4-migrating-to-gitlab)：GitLabとAWS間の接続を活用して広範なサービスの利用を実現する方法について説明します。この方法を用いると、AWSエコシステム全体での統合の可能性が連鎖的に広がります。\n\nこのガイドを通して、GitLabとAWSの強力な機能を組み合わせ、効率的で柔軟な開発ワークフローを作成する方法を学びましょう！\n\n## **第1セクション：GitLabへの並行移行**\n\nAWSにホストされているGitリポジトリをGitLab.comに移行することを検討中の方向けに、段階的なアプローチについて取り上げる本セクションでは、リスクを最小限に抑えながら移行を達成する方法をご紹介します。GitLabのミラーリング機能を活用すれば、既存の開発フローを維持しながら、新しい環境をテストできます。\n\n### **並行移行が重要な理由**\n\n大規模なシステムの移行には常にリスクが伴います。特に、実施中の開発作業や既存のインテグレーション、自動化されたプロセスに影響が生じる可能性があります。並行移行アプローチを採用すると、次のようなメリットがあります。\n\n1\\. リスクの最小化：既存のシステムを稼働させた状態で新しい環境をテストできます。  \n2\\. シームレスな移行：開発チームが新しいシステムに少しずつ慣れることができます。   \n3\\. インテグレーションテスト：すべてのインテグレーションと自動化を新しい環境で徹底的にテストできます。   \n4\\. 将来性：既存のCIと並行して、チームが徐々にGitLab [CI/CD](https://about.gitlab.com/ja-jp/blog/what-is-ci-cd/)に移行できるようにします。\n\n直接GitLabに一括で移行することが望ましいとわかっている場合は、並行移行を行う必要はありません。\n\n### **GitLab.comへの移行手順**\n\n#### **ステップ1：GitLab.comをセットアップする**\n\n* 会社で使用中のGitLab.comのグループがあるかどうか、またシングルサインオン（SSO）を設定済みであるかどうかを確認します。グループがあり、シングルサインオンを設定済みである場合は、両方とも使用することになります。\n\n* GitLab.comに会社で使用しているグループがない場合は、[GitLab.com](https://app.contentful.com/spaces/r9o86ar0p03f/entries/www.gitlab.com)にアクセスして新規アカウントを作成するか、既存のアカウントにログインしてください。\n\n* 会社用のネームスペース（Gitlab.comのルートレベルのグループ）を新たに作成します。  \n* ネームスペースに、（これまでに使用されていない）会社に合った名前を付けます。\n\n#### **ステップ2：リポジトリをインポートする**\n\n並行移行の場合：GitLabのプルミラーリング機能を使用して、AWSにホストされているリポジトリからGitLab.comに変更を自動的に同期します。\n\n1. GitLab.comのターゲットグループに移動します。  \n2. 右上の「新規プロジェクト」をクリックします。   \n3. 「新しいプロジェクトを作成」ページで「プロジェクトをインポート」をクリックします。   \n4. 「プロジェクトをインポート」ページで「URLによるリポジトリ」をクリックします。  \n5. 「GitリポジトリのURL」フィールドに、AWSにホストされているリポジトリのURLを入力します。   \n6. 「GitリポジトリのURL」フィールドの下にある「リポジトリをミラーリング」にチェックを入れます。  \n7. 認証の設定：AWS CodeCommitコンソールで、移行するリポジトリのクローンURLを選択します。CodeCommitリポジトリをGitLabに移行する場合は、HTTPS CodeCommit URLを使用して、GitLabのリポジトリのミラーリングを介してリポジトリをクローンできます。また、GitLabにAWSのIAMユーザーに割り当てたGit認証情報を入力する必要があります。AWS CodeCommit用のGit認証情報を作成する方法は、こちらの[AWSガイド（外部サイト）](https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-gc.html)に従ってください。\n\n![クローンURL](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097822/Blog/Content%20Images/Blog/Content%20Images/clone-url-screenshot__1__aHR0cHM6_1750097822121.png)\n\nこの設定を行うと、デフォルトでは5分ごとにAWSにホストされているリポジトリからGitLab.comに変更が自動的にプルされます。\n\n詳細については、[リポジトリのミラーリングに関するドキュメント](https://docs.gitlab.com/ee/user/project/repository/mirror/)をご参照ください。\n\n#### **ステップ3：インテグレーションのテストと検証を行う**\n\n1. [CI/CD](https://about.gitlab.com/ja-jp/blog/what-is-ci-cd/)パイプライン：既存のパイプラインを複製するために、GitLab CIで `.gitlab-ci.yml`  ファイルを設定します。[他のCIツールからGitLab CI/CDへの移行の計画](https://docs.gitlab.com/ee/ci/migration/plan\\_a\\_migration.html)について詳細をご確認ください。  \n2. イシュートラッキング：プロジェクトのイシューとテストワークフローをインポートします。  \n3. コードレビュー：マージリクエストプロセスとテストレビューワークフローを設定します。\n\n#### **ステップ4：段階的に移行する**\n\n1. 小規模または重要度の低いプロジェクトから移行を始めて、GitLab.comでの作業に慣れましょう。  \n2. チームメンバー向けにトレーニングを行い、新しいワークフローに適応する時間を十分に確保します。  \n3. インテグレーションとワークフローに問題がないことを確認しながら、徐々にその他のプロジェクトを移行します。\n\n詳細については、[CodeCommitからGitLabへの移行の自動化](https://gitlab.com/guided-explorations/aws/migrating-from-codecommit-to-gitlab/-/blob/main/migrating\\_codecommit\\_to\\_gitlab.md)をご参照ください。\n\n#### **ステップ5：移行を完了する**\n\nすべてのテストと検証が完了し、新しい環境にチームが慣れてきたら、完全な移行の計画を立てます。プロジェクトごとに以下の対応を行います。\n\n1. 移行日を決めて、すべてのステークホルダーに通知する。  \n2. 最後のデータ同期を行う。  \n3. ミラーリング設定をGitLabプロジェクトから削除する。  \n4. AWSにホストされているリポジトリを読み取り専用に設定し、すべての開発作業をGitLab.comに移行する。\n\n#### **ステップ6：新しい機能を導入するかどうかを判断する**\n\nGitLabでデベロッパーが利用できるコラボレーションとワークフローの自動化機能は、CodeCommitと比べてはるかに豊富です。これらの機能について理解するには、ある程度時間がかかります。中でもマージリクエストプロセスは、CodeCommitよりも強力です。\n\nGitLab上でリポジトリが安定させてしまえば、既存のソリューションと並行して非常に簡単にGitLab CI/CDを試せることになるでしょう。本番環境のワークフローはそのままに、時間をかけてGitLab CI/CDの自動化を完成させることができるのです。\n\nGitLabのアーティファクト管理も、リリース機能や多くのパッケージレジストリで非常に役に立ちます。\n\n### **第1セクションのまとめ**\n\nGitLabへの並行移行アプローチを採用すると、リスクを最小限に抑えながらスムーズな移行を実現できます。このプロセスを通じて、チームは新しい環境に徐々に適応でき、すべてのインテグレーションと自動化が正しく機能するようになります。並行移行を行う必要がないとわかっていて一括で移行する場合でも、スキップできるのは1つのチェックボックス設定のみです。\n\n## **第2セクション：GitLabとAWS CodeBuildの統合**\n\nAWS CodeBuildを使用して、GitLabリポジトリを構築してコードをテストしたい方は、こちらの完全ガイドを参考にして、CIパイプラインを効率的に設定してください。\n\n### **前提条件**\n\n* GitLab.comアカウント  \n* AWSアカウント  \n* AWS CLI（構成済み）\n\n### **ステップ1：AWS CodeStar ConnectionsでGitLabとの接続を作成する**\n\n1. AWSマネージメントコンソールにログインし、CodeBuildサービスに移動します。  \n2. 左側のナビゲーションパネルから「設定」\\>「接続」の順に選択します。  \n3. 「接続を作成」ボタンをクリックします。  \n4. プロバイダーとして「GitLab」を選択します。  \n5. 接続名を入力して「GitLabに接続」をクリックします。  \n6. GitLabの認証ページにリダイレクトされます。  \n7. 必要な権限を承認します。  \n8. 正常に接続されると、接続ステータスが「利用可能」に変わります。\n\n![CodeStar Connectセットアップ](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097822/Blog/Content%20Images/Blog/Content%20Images/codestar-connections-setup_aHR0cHM6_1750097822122.png)\n\n### **ステップ2：AWS CodeBuildプロジェクトを作成する**\n\n1. CodeBuildダッシュボードで「ビルドプロジェクトを作成」をクリックします。  \n2. プロジェクトの名前と説明を入力します。  \n3. ソース設定では、プロバイダーとして「GitLab」を選択します。  \n4. 先程作成した接続を選択し、GitLabのリポジトリとブランチを指定します。\n\n![CodeBuildプロジェクトを追加](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097822/Blog/Content%20Images/Blog/Content%20Images/codepipeline_step_3_add_codebuild_aHR0cHM6_1750097822123.png)\n\n**注：ステップ3以降では、ご自身の環境とニーズに応じて設定を行ってください。**\n\n### **第2セクションのまとめ**\n\nこのセクションでは、GitLabリポジトリをAWS CodeBuildと統合する方法について詳しく説明しました。このように設定することで、GitLabで行ったコード変更がAWS CodeBuildによって自動的にビルド・テストされる継続的インテグレーションパイプラインを実現できます。\n\n## **第3セクション：GitLabとAWS CodePipelineの統合**\n\nAWS CodePipelineを使用してGitLabリポジトリからの継続的デリバリーを実装しようとしている方は、この詳細なガイドを参考にしてください。GitLabをAWS CodeStar Connectionsプロバイダーとして利用できるようになったため、これまでよりも統合しやすくなりました。\n\n### **前提条件**\n\n* GitLab.comアカウント  \n* AWSアカウント  \n* AWS CLI（構成済み）\n\n### **ステップ1：AWS CodeStar ConnectionsでGitLabとの接続を作成する**\n\n1. AWSマネージメントコンソールにログインし、CodePipelineサービスに移動します。  \n2. 左側のナビゲーションパネルから「設定」\\>「接続」の順に選択します。   \n3. 「接続を作成」ボタンをクリックします。  \n4. プロバイダーとして「GitLab」を選択します。  \n5. 接続名を入力して「GitLabに接続」をクリックします。  \n6. GitLabの認証ページにリダイレクトされます。  \n7. 必要な権限を承認します。  \n8. 正常に接続されると、接続ステータスが「利用可能」に変わります。\n\n![CodeStar Connectセットアップ](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097822/Blog/Content%20Images/Blog/Content%20Images/codestar-connections-setup_aHR0cHM6_1750097822122.png)\n\n### **ステップ2：AWS CodePipelineを作成する**\n\n1. CodePipelineダッシュボードで「パイプラインを作成」をクリックします。  \n2. パイプライン名を入力して「次へ」をクリックします。  \n3. ソースプロバイダーとして「GitLab」を選択します。  \n4. 先程作成した接続を選択し、GitLabのリポジトリとブランチを指定します。  \n5. トリガータイプを選択します。リポジトリ内の特定のブランチやファイルタイプに対するプルイベントまたはプッシュイベントに基づいて、CodePipelineパイプラインの実行をトリガーできます。\n\n![ソースプロバイダーを追加](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097822/Blog/Content%20Images/Blog/Content%20Images/codestar-connections-setup_aHR0cHM6_1750097822125.png)\n\n![ソース構成を追加](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097822/Blog/Content%20Images/Blog/Content%20Images/codepipeline_step_2_source_provider_aHR0cHM6_1750097822127.png)\n\n**注：ステップ3以降では、ご自身の環境とニーズに応じて設定を行ってください。** \n\n### **第3セクションのまとめ**\n\nこのセクションでは、GitLabリポジトリをAWS CodePipelineと統合する方法について詳しく説明しました。このように設定することで、GitLabで行ったコード変更が自動的にAWS環境にデプロイされる継続的デリバリーパイプラインを実現できます。\n\n## **第4セクション：GitLabへの移行**\n\nGitLabにAWSを統合すると、開発ワークフローとデプロイワークフローを効率化する強力な機能を利用できるようになり、ソースコード管理に伴う問題を解決しやすくなります。統合方法は次のようにいくつかあり、それぞれに独自のメリットがあります。\n\n* AWS CodeStar Connectionsを使用してGitLabとAWSサービスを連携させる場合、さまざまなAWSサービスにGitLabなどの外部のGitリポジトリを接続できるようになるため、より一貫したワークフローを実現できます。この設定方法では、GitLabレポジトリでの自動ビルド、デプロイ、その他の重要なアクションが直接サポートされるため、開発プロセスの一貫性および効率性が向上します。  \n* AWS CodeStar Connections経由でGitLabとAWS CodePipelineを接続すると、完全なCI/CDパイプラインを作成できるため、自動化を次のレベルへと進められます。このアプローチでは、GitLabをAWS CodePipelineと統合することで、CodeBuildやCodeDeployなどのAWSサービスを使用して、ソース管理やビルドからテストやデプロイまでの全プロセスを自動化できます。これにより、堅牢でスケーラブルかつ効率的なデリバリープロセスを実現できます。\n\n![GitLabとAWSを一緒に使用するための新しいテクノロジーとソリューションのチャート](https://res.cloudinary.com/about-gitlab-com/image/upload/v1750097822/Blog/Content%20Images/Blog/Content%20Images/codepipeline_step_2_source_configured_aHR0cHM6_1750097822129.png)\u003Cbr>\u003Cbr>\n\n1.AWS CodeStar Connectionsを使ってGitLabとAWSサービスを接続する\n\nAWS CodeStar Connectionsは、外部のGitリポジトリ（GitHubやBitbucketなど）をAWSサービスと接続するためのサービスです。また、CodeStar Connections経由でGitLabをAWSサービスに接続することもできます。GitLabを使用する場合、HTTP Gitサーバーとしてカスタム接続を設定しなければならない可能性があります。 この方法でGitLabに接続できるAWSサービスは以下のとおりです。\n\n* __AWSサービスカタログ__ \n\nAWS Service Catalogは、組織におけるAWSリソースの標準化および管理を支援します。AWS Service CatalogをGitLabと統合すると、リソース管理の透明性が向上し、変更を追跡しやすくなります。具体的には、GitLabのコミットに基づいてカタログの更新を自動化し、運用効率を向上させることができます。\n\n* __AWS CodeBuild__ \n\nAWS CodeBuildは、ソースコードをコンパイルし、テストを実行し、デプロイできるソフトウェアパッケージを生成するマネージド型のビルドサービスです。GitLabとCodeBuildを統合すると、GitLabにコード変更がプッシュされるたびに自動化されたビルドプロセスが開始されるようになります。これにより、ビルドの一貫性が確保され、コラボレーションとバージョン管理を容易に進められます。\n\n* __AWS Glue ノートブックジョブ__ \n\nAWS Glueノートブックジョブは、データの準備とETL （抽出、変換、ロード）タスクを対話形式で開発して実行できるサービスです。GitLabとGlueノートブックジョブを統合すると、ノートブックとETLスクリプトのバージョン管理を行えるようになり、チームメンバー間のコラボレーションが促進され、データ処理パイプラインの品質管理が強化されます。\n\n* __AWS Proton__\n\nAWS Protonは、[マイクロサービス](https://about.gitlab.com/ja-jp/blog/what-are-the-benefits-of-a-microservices-architecture/)とServerlessアプリケーションの開発とデプロイを自動化するサービスです。GitLabとAWS Protonを統合することで、インフラストラクチャをコードとして管理し、デプロイを自動化し、一貫した環境管理を実現できるため、開発プロセスをさらに効率化できます。\n\nAWS CodeStar Connectionsのサポート対象のサービスが増えるにつれ、より多くのAWSサービスをGitLabとさらに簡単に接続できるようになります。そのため、CodeStar Connectionsを新たにサポートするサービスを定期的にチェックすることをお勧めします。\u003Cbr>\u003Cbr>\n\n2. AWS CodeStar Connections経由（CodeDeployを含む）でCodePipelineとGitLabを接続する\n\nAWS CodePipelineは、ソフトウェアのリリースプロセスを自動化する継続的デリバリーサービスです。GitLabとCodePipelineを接続するには、AWS CodeStar Connectionsを使用する必要があります。この設定方法を用いると、GitLabリポジトリをソースとして指定し、CI/CDパイプライン全体を自動化できます。 CodePipelineがサポートする主なアクションは以下のとおりです。\n\n* __ソース管理__ ：AWS CodeCommit、GitHub、Bitbucket、GitLab  \n* __ビルドとテスト__ ：AWS CodeBuild、Jenkins  \n* __デプロイ__ ：AWS CodeDeploy、Elastic Beanstalk、ECS、S3  \n* __承認__ ：手動承認  \n* __インフラストラクチャ管理__ ：AWS CloudFormation  \n* __Serverless__ ：AWS Lambda  \n* __テスト__ ：AWS Device Farm  \n* __カスタムアクション__ ：AWS Step Functions\n\nGitLabとCodePipelineを統合すると、GitLabにコード変更がプッシュされるたびにパイプラインが自動的にトリガーされるため、一貫したプロセスでビルドからデプロイまでを行えます。さらに、これをGitLabのバージョン管理機能と組み合わせることで、デプロイの履歴と状態を簡単に追跡できるようになり、より柔軟で信頼性の高いソフトウェアデリバリーを実現できます。\n\n## **まとめ**\n\nこのガイドでは、GitLabへの移行、およびGitLabとAWSとの統合に関する包括的な情報を提供しました。4つの主なトピックを通して、以下の内容を取り上げました。\n\n* GitLabへの並行移行：リスクを最小限に抑えつつ、AWSにホストされている既存リポジトリからGitLab.comへ徐々に移行する方法。  \n* AWS CodeBuildとの統合：GitLabリポジトリと統合された強力なCI環境を設定する手順。  \n* AWS CodePipelineとの統合：GitLabリポジトリを使用して効率的な継続的デリバリーパイプラインを構築する方法。  \n* CodePipelineとCodeStar Connectionsのダウンストリーム統合：GitLabとAWS間の接続を活用して広範なサービスの利用を実現する方法。この方法を用いると、AWSエコシステム全体での統合の可能性が連鎖的に広がります。\n\nコードホスティングと統合の実装戦略は組織ごとに異なります。このガイドをチュートリアルとして、貴社独自のGitLab とAWSの統合および実装戦略の出発点としてご利用ください。\n\n## **リソース**\n\nより詳しい情報と高度な設定については、以下のリソースを参照してください。\n\n* [GitLabドキュメント](https://docs.gitlab.com/)  \n* [AWS CodeBuildユーザーガイド](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html)  \n* [AWS CodePipelineユーザーガイド](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html)  \n* [GitLab CI/CDドキュメント](https://docs.gitlab.com/ee/ci/)  \n* [AWSとの統合](https://docs.gitlab.com/ee/solutions/cloud/aws/gitlab\\_aws\\_integration.html)\n\nご質問がある場合やサポートが必要な場合は、[GitLabサポート](https://about.gitlab.com/support/)またはAWSサポートまでお問い合わせください。みなさまがAWSとGitLabの統合を始める上で、こちらの総合ガイドがお役に立てば幸いです。\n\u003Cbr>\u003Cbr>\n\n*監修：小松原 つかさ [@tkomatsubara](https://gitlab.com/tkomatsubara)\u003Cbr>\n（GitLab合同会社 ソリューションアーキテクト本部 シニアパートナーソリューションアーキテクト）*\n",[110,1250,781,802,1005,14,235],"AWS","2024-09-05",{"slug":1253,"featured":92,"template":679},"ultimate-guide-to-migrating-from-aws-codecommit-to-gitlab","content:ja-jp:blog:ultimate-guide-to-migrating-from-aws-codecommit-to-gitlab.yml","Ultimate Guide To Migrating From Aws Codecommit To Gitlab","ja-jp/blog/ultimate-guide-to-migrating-from-aws-codecommit-to-gitlab.yml","ja-jp/blog/ultimate-guide-to-migrating-from-aws-codecommit-to-gitlab",{"_path":1259,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1260,"content":1266,"config":1272,"_id":1274,"_type":16,"title":1275,"_source":18,"_file":1276,"_stem":1277,"_extension":21},"/ja-jp/blog/gitlab-17-3-released",{"title":1261,"description":1262,"ogTitle":1261,"ogDescription":1262,"noIndex":6,"ogImage":1263,"ogUrl":1264,"ogSiteName":770,"ogType":771,"canonicalUrls":1264,"schema":1265},"GitLab 17.3リリース","GitLab 17.3でリリースした最新機能をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662141/Blog/Hero%20Images/17-3-cover.png","https://about.gitlab.com/blog/gitlab-17-3-released","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 17.3リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2024-08-15\",\n      }",{"title":1261,"description":1262,"authors":1267,"heroImage":1263,"date":1268,"body":1269,"category":14,"tags":1270,"updatedDate":1271},[676],"2024-08-15","**GitLab Duo の根本原因分析機能を含むGitLab 17.3をリリース**\n\nこのたび、GitLab 17.3がリリースされたことを嬉しく思います。このリリースでは、GitLab Duoによる失敗したパイプラインジョブの根本原因分析、AIアシストによる脆弱性の修正、AIインパクト分析でのコード提案の採用率とGitLab Duoシートの使用率の表示、単一プロジェクトへの複数のコンプライアンスフレームワークの追加などの機能をご利用いただけるようになりました。\n\n本日、GitLab Duoによる失敗したパイプラインジョブの根本原因分析、AIアシストによる脆弱性の修正、コード提案の採用率とGitLab Duoアクティブユーザーの使用率に関するAIインパクト分析、単一プロジェクトへの複数のコンプライアンスフレームワークの追加などの機能を備えたGitLab 17.3のリリースを発表します！\n\nこれらの機能は、今回のリリースに含まれる160件以上の改善点のほんの一部です。役に立つ最新情報をすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLab 17.3には、GitLabコミュニティのユーザーから130件以上ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。\n\n来月のリリースで予定されている内容を先取りするには、17.4リリースのキックオフビデオも視聴できる[今後のリリースページ](https://about.gitlab.com/direction/kickoff/) をご覧ください。\n\n## **今月のMost Valuable Person（[MVP](https://about.gitlab.com/community/mvp/)）は[Anton Kalmykov](https://gitlab.com/antonkalmykov)さんが受賞**\n\nMVPには、誰でも[GitLabコミュニティのコントリビューターを推薦](https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490)できます。積極的に活動している候補者を応援したり、他の誰かをノミネートしてみませんか。🙌\n\nAnton Kalmykovさんは、今年特に活躍しているGitLabのコントリビューターの1人で、2月以降、37もの[コントリビューションがマージ](https://gitlab.com/gitlab-org/gitlab/-/merge_requests?scope=all&state=merged&author_username=antonkalmykov)されており、現在進行中のその他のイシューにもコントリビュートしてくれています。Antonさんは[Yolo Group（Bombay Games）](https://yolo.com/)のシニアフロントエンドエンジニアです。\n\nAntonさんは次のようにコメントしています。「GitLabへのコントリビューションは、もっとも挑戦しがいがあり、やりがいがあって楽しい取り組みです。このような素晴らしい製品の開発と改善に携わる機会を持てたことに感謝しています。この機会を通じて新たに多くのことを学びましたが、やるべきことがまだたくさんあります。GitLabチーム、中でも私のMRをレビューし、正しい方向に導いてくれた方々にとても感謝しています」\nAntonさんは、[テナントスケール](https://about.gitlab.com/direction/runtime/)グループに関するフロントエンドのイシューの解決を支援したことが評価され、GitLabのシニアプロダクトマネージャーである[Christina Lohr](https://gitlab.com/lohrc)により推薦されました。\n\n「基本的なワークフローに取り組む中で、ユーザーエクスペリエンスに関する小規模な改善を多数行う必要があります。コミュニティユーザーの力を借りて、このような取り組みをより迅速に完了できるのはありがたいことです」とChristinaは述べています。「このようなあらゆる改善を通じて、グループやプロジェクト間でより一貫したユーザーエクスペリエンスを実現できています。Antonさん、ありがとうございます」\n\nこの場を借りて、GitLabを共同開発してくださっているAntonさん、そしてGitLabのオープンソースコントリビューターの方々に心から感謝します！\n\n## **GitLab 17.3でリリースされた主な改善点**\n\n### **根本原因分析による失敗したジョブのトラブルシューティング**\n\nSaaS: Ultimate、Duo Enterprise\nSelf-Managed: Ultimate、Duo Enterprise\n\n根本原因分析の一般提供を開始しました。根本原因分析を使用すると、CI/CDパイプラインで失敗したジョブの問題を迅速に解決できます。AI搭載のこの機能は、失敗したジョブのログを分析し、ジョブの失敗に繋がった根本原因をすばやく特定し、修正方法を提案します。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/gitlab_duo/#root-cause-analysis)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13080)\n\n\u003Ciframe width=\"1046\" height=\"588\" src=\"https://www.youtube.com/embed/Yf7Iidf2GW8\" title=\"Troubleshoot pipeline job failures with AI\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### **GitLab Duoのヘルスチェック（ベータ）**\n\nSaaS: \\-\nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nSelf-ManagedインスタンスでGitLab Duoのセットアップのトラブルシューティングができるようになりました。GitLab Duoページの**管理者**エリアで、「**ヘルスチェックを実行**」を選択します。このヘルスチェックでは、一連の検証を実行し、GitLab Duoを確実に利用可能な状態にするために適切な是正措置を提案します。\nGitLab Duoのヘルスチェックは、Self-ManagedおよびGitLab Dedicatedでベータ機能として利用可能です。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/gitlab_duo/turn_on_off.html#run-a-health-check-for-gitlab-duo)\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/14518)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/Failed_GitLab_Duo_health_check.png\">\n\n### **GitLab UIからポッドを削除**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nKubernetesで失敗したポッドを再起動または削除せざるを得なかったことはありますか。その場合、これまではGitLabを離れて別のツールを使用してクラスターに接続し、ポッドを停止し、新しいポッドが起動されるのを待つ必要がありました。今回、ポッドの削除機能がGitLabに組み込まれたため、Kubernetesクラスターに関する問題をスムーズに解決できるようになりました。\n\nクラスターまたはネームスペース全体のすべてのポッドが一覧表示される[Kubernetes用ダッシュボード](https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html)から、ポッドを停止できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html#delete-a-pod)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/467653)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/delete-pod.png\">\n\n### **ローカルターミナルからクラスターに簡単に接続**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nローカルターミナル、またはデスクトップ用のKubernetes GUIツールのいずれかを使用して、Kubernetesクラスターに接続したい場合、[Kubernetes用のエージェントのユーザーアクセス機能](https://docs.gitlab.com/ee/user/clusters/agent/user_access.html)を使用してターミナルに接続することが可能になりました。これまでコマンドを見つけるには、GitLabを離れてドキュメントを閲覧する必要がありましたが、今回のリリースでGitLab UIから接続コマンドを利用できるようになりました。さらにユーザーアクセスの設定にも対応します！\n\n接続コマンドを取得するには、[Kubernetesダッシュボード](https://docs.gitlab.com/ee/ci/environments/kubernetes_dashboard.html)または[エージェントリスト](https://docs.gitlab.com/ee/user/clusters/agent/work_with_agent.html#view-your-agents)にアクセスしてください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/clusters/agent/user_access.html)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/463769)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/17-3-connect-agent.png\">\n\n### **AIによる脆弱性の修正**\n\nSaaS: Ultimate、Duo Enterprise\nSelf-Managed: Ultimate、Duo Enterprise\n\n脆弱性の修正にAIが活用され、ユーザーが脆弱性を修正できるよう、具体的なコード修正案が提示されるようになりました。ボタンをクリックすると、[SASTがサポートしているCWE識別子リスト](https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#availability)から脆弱性の解決作業を開始できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/vulnerabilities/#vulnerability-resolution)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/10783)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/vulnerability_resolution.png\">\n\n### **単一のプロジェクトへの複数のコンプライアンスフレームワークの追加**\n\nSaaS: Premium、Ultimate\nSelf-Managed: Premium、Ultimate\n\nコンプライアンスフレームワークを作成して、プロジェクトに特定のコンプライアンス要件があるか、もしくは追加の監督が必要であるかを特定できます。コンプライアンスフレームワークをプロジェクトに適用すると、任意でコンプライアンスパイプライン設定を実施できます。\n\nこれまでユーザーは、プロジェクトごとに1つのコンプライアンスフレームワークしか適用できなかったため、プロジェクトに設定できるコンプライアンス要件の数が限られていました。今回、プロジェクトごとに複数のコンプライアンスフレームワークを適用できるようになりました。これにより、特定の時点において複数の異なるコンプライアンスフレームワークを単一のプロジェクトに適用できます。適用後、プロジェクトには各フレームワークのコンプライアンス要件が設定されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/compliance_frameworks.html#add-a-compliance-framework-to-a-project)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13294)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/multiple-compliance-frameworks.png\">\n\n### **AIインパクト分析：コード提案の採用率とGitLab Duoのシートの使用率**\n\nSaaS: Ultimate、Duo Enterprise\nSelf-Managed: Ultimate、Duo Enterprise\n\nGitLab Duoの有効性と使用率を示す2つの新しいメトリックが、[バリューストリームダッシュボードのAIインパクト分析](https://about.gitlab.com/blog/developing-gitlab-duo-ai-impact-analytics-dashboard-measures-the-roi-of-ai/)に追加され、GitLab Duoがビジネス価値の提供にもたらす影響を把握できるようになりました。\n\n**コード提案の採用率**メトリックは、デベロッパーがGitLab Duoによるコード提案を採用する頻度を示します。このメトリックは、コード提案の有効性と、コントリビューターのAI機能に対する信頼度の両方を反映します。具体的には、このメトリックは過去30日間にコードコントリビューターが採用したGitLab Duoによるコード提案の割合を示します。\n\n**アサイン済みおよび使用済みのGitLab Duoシート**メトリックは、使用されているライセンスシートの割合を示します。組織はこのメトリックを参考にして、ライセンスの使用状況やリソースの割り当て、使用パターンを把握する計画を効果的に立てられます。このメトリックは、過去30日間に1つ以上のAI機能を使用したアサイン済みのシートの割合を追跡します。\n\nこれらの新しいメトリックの追加に伴い、新しい概要タイルも導入されました。メトリックのサマリーがわかりやすく視覚的に表示されるため、AI機能の現状を迅速に評価できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#ai-impact-analytics)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/471168)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/173_ai_tiles.png\">\n\n## **GitLab 17.3のその他の改善**\n\n### **コマンドパレットを使用したグループ設定の検索**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\n17.2では、[コマンドパレットを使用してプロジェクトを検索する](https://about.gitlab.com/releases/2024/07/18/gitlab-17-2-released/#find-project-settings-by-using-the-command-palette)機能を追加しました。この変更により、必要な設定をすばやく見つけやすくなりました。\n\n17.3では、コマンドパレットからグループ設定も検索できるようになりました。グループを開き、「**検索または移動先…**」を選択し、コマンドモードで「`>`」を入力してから設定セクションの名前（**マージリクエストの承認**）を入力してみてください。表示された結果をクリックすると、その設定に移動できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/search/command_palette.html)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/448646)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/manage-search-for-group-settings.png\">\n\n### **APIを使用した継承設定の切り替え**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nこれまではUIからのみ、プロジェクトにインテグレーション設定を継承するか、独自の設定を使用するかを制御できました。\n\n本リリースでは、すべてのインテグレーションのREST APIパラメータに`use_inherited_settings`が追加されるようになります。このパラメータを使用すると、APIを用いてプロジェクトにインテグレーション設定を継承するかどうかを設定できます。パラメータを設定していない場合、デフォルトの動作は`false` であり、プロジェクト独自の設定を使用します。\n\n[ドキュメント](https://docs.gitlab.com/ee/api/integrations.html)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/467089)\n\n### **タスクへのマージリクエストの追加**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nタスクは、イシューをエンジニアリング実装ステップに分割する際によく使用されます。このリリース以前は、実装されているマージリクエストにタスクを結びつける方法はありませんでしたが、今回のリリースで、マージリクエストの説明からイシューを参照するときと同様に[クロージングパターン](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically)を使用することが可能になりました。タスクビューでは、関連するマージリクエストがサイドバーに表示されます。プロジェクトの[自動完了設定が有効](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#disable-automatic-issue-closing)になっている場合、関連するマージリクエストがデフォルトのブランチにマージされると、タスクが自動的にクローズされます。\n[ドキュメント](https://docs.gitlab.com/ee/user/tasks.html#add-a-merge-request-and-automatically-close-tasks)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/440851)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/task-merge-requests.png\">\n\n### **タスクやOKR（Objective and Key Results）アイテムの不正利用の報告**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\n従来のイシューと同様、「**アクション**」メニューから直接、作業アイテムの不正利用を簡単に報告できるようになりました。この新機能を使用すると、不適切なコンテンツにすばやくフラグを立てられるため、ワークスペースがクリーンかつ安全に保たれて、チームのコラボレーション環境が向上します。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/report_abuse.html)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/461848)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/report_abuse_for_task_objective_and_key_result_items.png\">\n\n### **OKRとタスクの親アイテムの設定**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\n[OKR](https://docs.gitlab.com/ee/user/okrs.html#set-an-objective-as-a-parent)と[タスク](https://docs.gitlab.com/ee/user/tasks.html#set-an-issue-as-a-parent)の親の割り当てを子レコードから直接、簡単に更新できるようになりました。もういろいろな画面を行ったり来たりする必要はありません。これは、当社の目標である[ワークフローの効率性の向上](https://gitlab.com/groups/gitlab-org/-/epics/10501)に向けた大きな一歩です。\n参考：[OKRとは](https://about.gitlab.com/ja-jp/blog/what-is-an-okr/)？\n\n[ドキュメント](https://docs.gitlab.com/ee/user/okrs.html#set-an-objective-as-a-parent)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/11198)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/parent_widget_for_work_items.png\">\n\n### **JetBrains IDEでのTLSサポートの向上**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\n機密性の高い環境でセキュリティを強化するために、JetBrains IDEの設定で、クライアント証明書や公開認証局（CA）などのカスタムHTTPエージェントオプションを直接設定できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/editor_extensions/jetbrains_ide/#add-a-custom-certificate-for-code-suggestions)\n[イシュー](https://gitlab.com/gitlab-org/editor-extensions/gitlab-jetbrains-plugin/-/issues/371)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/certificate-settings.png\">\n\n### **CI/CDカタログコンポーネントの入力の詳細に説明とタイプを追加**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nカタログのCI/CDコンポーネントの詳細ページには、コンポーネントに関する有用な情報が表示されます。本リリースでは、利用可能な入力に関する情報を示す表に2つの列を追加しました。新たに追加された「**説明**」および「**タイプ**」列を使用すると、入力が何に使用され、どのようなタイプの値が想定されるかが非常にわかりやすくなります。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/components/#cicd-catalog)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/426870)\n\n### **GitLab Runner 17.3**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\n本日、GitLab Runner 17.3がリリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、軽量で拡張性の高いエージェントです。GitLab Runnerは、GitLabに組み込まれているオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。\n\n**バグの修正：**\n\n* [Kubernetes Runnerでキャンセルすると、ジョブがハングアップする模様](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37780)\n* [指定されていない場合、ログレベルが更新されない](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/37490)\n* [Runner Kubernetes executorを使用すると、ジョブログにより余計な改行が追加される](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/27099)\n\nすべての変更の一覧は、GitLab Runnerの[変更履歴](https://gitlab.com/gitlab-org/gitlab-runner/blob/17-3-stable/CHANGELOG.md)で確認できます。\n\n[ドキュメント](https://docs.gitlab.com/runner)\n\n### **マージトレインの可視化**\n\nSaaS: Premium、Ultimate\nSelf-Managed: Premium、Ultimate\n\nマージトレインを可視化して、パイプラインのマージリクエストのステータスと順序を、より的確に理解できるようになりました。マージトレインの可視化により、コンフリクトを早めに特定し、マージトレイン内で直接マージリクエストに対してアクションを実行し、デフォルトブランチを破損するリスクを最小限に抑えられます。(補足：マージトレインの可視化は、複数のマージリクエストを並列で管理し、マージ前の競合を事前に解決する機能です)\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/pipelines/merge_trains.html)\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13705)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/merge-train-visualization.png\">\n\n### **Kubernetes 1.30のサポート**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\n本リリースでは、2024年4月にリリースされたKubernetesバージョン1.30のフルサポートが追加されました。Kubernetesにアプリをデプロイすると、接続しているクラスターを最新バージョンにアップグレードし、そのすべての機能を利用できるようになります。\n[Kubernetesのサポートポリシーやサポートされているその他のKubernetesバージョン](https://docs.gitlab.com/ee/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features)について、詳細をご確認ください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/clusters/agent/#supported-kubernetes-versions-for-gitlab-features)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/456929)\n\n### **SAST、IaCスキャン、シークレット検出で使用されるルールセットの実施**\n\nSaaS: Ultimate\nSelf-Managed: Ultimate\n\nリポジトリにコミットされたローカル設定ファイルを作成するか、CI/CD変数を設定して複数のプロジェクトに共有設定を適用することで、[SAST](https://docs.gitlab.com/ee/user/application_security/sast/customize_rulesets.html)、[IaCスキャン](https://docs.gitlab.com/ee/user/application_security/iac_scanning/#customize-rules)、[シークレット検出](https://docs.gitlab.com/ee/user/application_security/secret_detection/pipeline/index.html#customizing-analyzer-settings)で使用されるルールをカスタマイズできます。\nこれまでは共有ルールセットの参照が設定されている場合でも、スキャナーはローカル設定ファイルを優先していました。この優先順位により、スキャンの際に既知の信頼できるルールセットを確実に使用することは困難でした。\n\n今回、新しいCI/CD変数`SECURE_ENABLE_LOCAL_CONFIGURATION`が追加され、ローカル設定ファイルを許可するかどうかを制御できるようになりました。この変数は、ローカル設定ファイルの使用を許可するかどうかを制御します。デフォルトではローカル設定が優先されますが、これを無効にすると、共有設定が優先されます。[スキャンの実行](https://docs.gitlab.com/ee/user/application_security/#enforce-scan-execution)時にこの値を`false`に設定すると、プロジェクトメンバーのデベロッパーによりローカル設定ファイルが追加された場合でも、スキャンの際に共有ルールセットまたはデフォルトルールセットが確実に使用されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/sast/customize_rulesets.html#specify-a-remote-configuration-file)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/414732)\n\n### **マージリクエストの外部ステータスチェックに認証を追加**\n\nSaaS: Ultimate\nSelf-Managed: Ultimate\n\n外部ステータスチェックの設定時、HMAC（ハッシュベースのメッセージ認証コード）認証を指定できるようになりました。これにより、GitLabから外部サービスへのリクエストの信頼性をより安全な方法で検証できます。\n\nステータスチェックを有効にすると、共有シークレットを使用してリクエストごとに一意の署名が生成されます。生成された署名は、ハッシュアルゴリズムとしてSHA256を用いて、`X-Gitlab-Signature`ヘッダーで送信されます。\n\n* セキュリティの向上：HMAC認証はリクエストの改ざんを防ぎ、正当な送信元からのリクエストであることを保証します。\n* コンプライアンス：この機能は、セキュリティを最も重視する銀行など、規制の厳しい業界において特に有用です。\n* 後方互換性：この機能の利用は任意です。また後方互換性があります。ユーザーは、新規または既存のチェックでHMAC認証を有効にするかどうかを選べますが、既存の外部ステータスチェックは変更なく引き続き機能します。\n\n[今後のイテレーション](https://gitlab.com/gitlab-org/gitlab/-/issues/476163)で、GitLabはHTTPリクエストも検証してブロックするオプションを追加する予定です。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/merge_requests/status_checks.html)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/433035)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/status-check-hmac.png\">\n\n### **管理者用UIを使用したパーソナルアクセストークンの無効化**\n\nSaaS: \\-\nSelf-Managed: Free、Premium、Ultimate\n\n管理者は、管理者用UIからインスタンスのパーソナルアクセストークンを無効化または再有効化できるようになりました。以前これを行うには、管理者はアプリケーション設定APIかGitLab Railsコンソールを使用する必要がありました。\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#use-the-admin-ui)[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/436991)\n\n### **カスタムロールに対するLDAPグループリンクのサポート**\n\nSaaS: Ultimate\nSelf-Managed: Ultimate\n\nLDAPグループリンクを使用してグループのユーザー権限を管理している組織は、すでにデフォルトのロールをメンバーシップに使用できます。\n今回のリリースで、そのサポートをカスタムロールに拡張しました。この設定により、多数のユーザーグループへのアクセスをマッピングしやすくなりました。\n\n### **サインアウト時にサブドメインのCookieを保持**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nGitLabのサインアウトプロセスを改善し、サインアウト時に兄弟サブドメインからのCookieが削除されないようにしました。これまでは、これらのCookieは削除されていたため、ユーザーはGitLabと同じトップレベルドメイン上にある他のサブドメインサービスからもサインアウトされてしまっていました。たとえば、ユーザーが`kibana.example.com`上にKibanaを設定し、`gitlab.example.com`上にGitLabを設定している場合、今後はGitLabからサインアウトしても、Kibanaからサインアウトされることはありません。\n\nこの場を借りて、コントリビュートしてくれた[Guilherme C. Souza](https://gitlab.com/GCSBOSS)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/active_sessions.html)\n\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/471097)\n\n### **オムニバスの改善**\n\nSaaS: \\-\nSelf-Managed: Free、Premium、Ultimate\n\nGitLab 17.3には、[Raspberry Pi OS 12](https://www.raspberrypi.com/news/bookworm-the-new-version-of-raspberry-pi-os/)をサポートするパッケージが含まれています。\nDebian 10の[サポートは、2024年6月30日をもって終了](https://www.debian.org/releases/buster/)しました。GitLabでは、GitLab 17.6でDebian 10のサポートを終了します。\n\n[ドキュメント](https://docs.gitlab.com/omnibus/)\n\n### **「マイワーク」でのプロジェクトやグループのソートとフィルタリングの改善**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\n「**マイワーク**」でのプロジェクトやグループの概要のソートとフィルタリング機能を更新しました。これまでは、プロジェクトの「**マイワーク**」ページで名前や言語でフィルタリングしたり、事前定義されたソートオプションを使用したりすることができました。今回、**名前**、**作成日**、**更新日**、**スター**といった標準化されたソートオプションを使用できるようになりました。また、昇順または降順でソートするナビゲーション要素を追加し、言語フィルターを「フィルター」メニューに移動しました。新たに追加された「**非アクティブ**」タブで、アーカイブされたプロジェクトを確認できるようになりました。さらに、**ロール**フィルターが追加され、自分がオーナーとなっているプロジェクトを検索することもできます。\n\nグループの「マイワーク」ページでは、**名前**、**作成日**、**更新日**などの標準化されたソートオプションを使用できるようになりました。また、ナビゲーション要素を使用すると昇順または降順でソートすることができます。\nこの変更についてのフィードバックは[イシュー438322](https://gitlab.com/gitlab-org/gitlab/-/issues/438322)で投稿できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/working_with_projects.html#search-in-projects)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/25368)\n\n### **APIを使用して、グループやプロジェクトのWebhookイベントを一覧表示できるように**\n\nSaaS: Premium、Ultimate\nSelf-Managed: Premium、Ultimate\n\nGitLab 9.3以降のバージョンでは、プロジェクトのWebhookリクエスト履歴をUIで表示できます。また、GitLab 15.3以降のバージョンでは、[グループのWebhookリクエスト履歴もUIで表示](https://docs.gitlab.com/ee/user/project/integrations/webhooks.html#view-webhook-request-history)されます。\n\n本リリースでは、そのデータにREST APIでアクセスできるようになりました。これにより、Webhookエラーを検出して対処するプロセスを自動化できます。特定の[プロジェクトフック](https://docs.gitlab.com/ee/api/projects.html#get-project-hook-events)と[グループフック](https://docs.gitlab.com/ee/api/groups.html#get-group-hook-events)に関する過去7日間のイベントリストを取得できます。\n\nこの場を借りて、[コミュニティにコントリビュート](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151048)してくれた[Phawin](https://gitlab.com/lifez)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ee/api/projects.html#get-project-hook-events)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/437188)\n\n### **スパークラインによって傾向の可視化が強化されたAIインパクト分析**\n\nSaaS: Ultimate、Duo Enterprise\nSelf-Managed: Ultimate、Duo Enterprise\n\n本リリースでは、スパークラインの導入により、[AIインパクト分析](https://about.gitlab.com/blog/developing-gitlab-duo-ai-impact-analytics-dashboard-measures-the-roi-of-ai/)が大幅に改善されました。データ表に埋め込まれたこのシンプルなミニグラフは、AIインパクトのデータの読みやすさとアクセシビリティを向上します。新たに導入されたスパークラインでは数値を視覚的な表現に変換することで、長期にわたる傾向を特定しやすくなり、上向きまたは下向きの動きを見つけられます。この新しい視覚的なアプローチにより、複数のメトリックにまたがる傾向を比較するプロセスが効率化され、数字だけに頼っていた場合に必要だった時間と労力を削減できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#ai-impact-analytics)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/464692)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/17.3_aii_spark.png\">\n\n### **サイクルタイム短縮のためのバリューストリーム分析の新しいステージイベント**\n\nSaaS: Premium、Ultimate\nSelf-Managed: Premium、Ultimate\n\nGitLabにおけるマージリクエスト（MR）の追跡を改善するために、[バリューストリーム分析に新しいステージイベント](https://about.gitlab.com/solutions/value-stream-management/)「**MRのレビュアーが最初にアサイン**」を追加しました。新たにこのイベントが追加されたことで、チームはレビュープロセスのどの場所で遅延が生じているかを特定し、コラボレーションを改善できる機会を見つけ、チームメンバーに対して対応力と責任を高める文化を促進できます。レビュー時間が短縮されると、開発の全体的なサイクルタイムに直接影響し、[迅速なソフトウェアデリバリーにつながり](https://about.gitlab.com/blog/three-steps-to-optimize-software-value-streams/)ます。 例を挙げると、「**MRのレビュアーが最初にアサイン**」からはじまって「**MRをマージ済み**」で終わる新しいカスタムステージ「**マージまでのレビュー時間（RTTM）**」を追加できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/value_stream_analytics/#value-stream-stage-events)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/466383)\n\n\u003Ciframe width=\"443\" height=\"249\" src=\"https://www.youtube.com/embed/kblpge6xeL8\" title=\"Optimizing Merge Request review process with Value Stream Analytics\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### **タスク、目標、主な成果内でのスレッドの解決**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nタスク、目標、主な成果においてスレッドを解決できるようになり、重要なやり取りの管理および追跡をしやすくなりました。デフォルトでは解決済みのスレッドは折りたたまれているため、進行中のディスカッションに集中しやすくなり、コラボレーションのワークフローが効率化されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/discussions/#resolve-a-thread)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/458818)\n\n### **VS Codeで言語ごとにコード提案をきめ細かく制御できるように**\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise\nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\n特定のプログラミング言語のコード提案を有効または無効にすることで、VS Codeでのコーディング体験をより細かく制御できます。このようにきめ細かく制御することで、ワークフローをカスタマイズし、ご希望の言語でのコード提案のメリットはそのままに、無関係または邪魔な提案の表示件数を減らせます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/repository/code_suggestions/supported_extensions.html#manage-languages-for-code-suggestions)\n[イシュー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/issues/1388)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/create-granular-language-controls.png\">\n\n### **リポジトリからコンテンツをより簡単に削除できるように**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\n現在、リポジトリからコンテンツを削除するプロセスは複雑です。GitLabにプロジェクトを強制的にプッシュしなければならない可能性があります。そのため、エラーが発生しやすくなり、プッシュを有効にするために保護を一時的に無効にしなければならないこともあります。リポジトリ内にある容量を使いすぎているファイルを削除する場合は、さらに難しい可能性があります。\n\nプロジェクト設定に新しく追加されたリポジトリメンテナンスオプションを使用して、オブジェクトIDリストに基づいてblobを削除できるようになりました。この新しい方法を使用すれば、GitLabにプロジェクトを強制プッシュしなくても、コンテンツを選択して削除できます。\n\nまた、プロジェクトから削除する必要があるシークレットやその他のコンテンツがプッシュされた場合に、テキストを削除する新たなオプションも導入します。ユーザーは、GItLabによりプロジェクト全体のファイルで「`***削除済み***`」に置き換えられる文字列を指定します。テキストの編集後、ハウスキーピングが実行され、古いバージョンの文字列が削除されます。\n\nこの新しいUIにより、コンテンツを削除する必要がある際のリポジトリの管理方法が効率化されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/repository/reducing_the_repo_size_using_git.html#remove-blobs)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/450701)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/create-ui-for-repository-maintenance.png\">\n\n### **ジョブ名でジョブをフィルタリング**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nジョブ名を検索することで、特定のジョブをすばやく見つけられるようになりました。\nこれまでは、ステータスによってのみジョブリストをフィルタリングでき、特定のジョブを見つけるには手動でスクロールする必要がありました。本リリースでは、ジョブ名を入力して結果をフィルタリングできるようになりました。結果に含まれるのは、GitLab 17.3のリリース後に実行されたパイプラインのジョブのみです。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/jobs/)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/387547)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/filter-jobs-by-job-name.png\">\n\n### **macOSでホストされるRunnerのパフォーマンスが向上**\n\nSaaS: Premium、Ultimate\nSelf-Managed: \\-\n\n最近のmacOS 14.5とXcode 15.4へのアップグレードに伴い、パフォーマンスを改善しました。この変更により、Xcodeのビルドジョブは以前のジョブ実行と比べて大幅に高速化されました。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/runners/hosted_runners/macos.html)\n[イシュー](https://gitlab.com/gitlab-org/ci-cd/shared-runners/images/job-images/-/issues/6)\n\n### **Kubernetes用エージェントの作成および削除時の監査イベント**\n\nSaaS: Premium、Ultimate\nSelf-Managed: Premium、Ultimate\n\nKubernetes用エージェントは、KubernetesクラスターとGitLabの間で双方向のデータフローを実現するため、システムにアクセスできるコンポーネントが追加または削除されるタイミングを把握するのは重要なことです。これまでのリリースでは、コンプライアンスチームはカスタムツールを使用するか、GitLabで直接これらのデータを検索する必要がありました。本リリースから、GitLabでは次の監査イベントを提供するようになりました。\n\n* `cluster_agent_created`：新しいKubernetes用エージェントを登録したユーザーに関する記録\n* `cluster_agent_create_failed`：新しいKubernetes用エージェントを登録しようとしたものの、失敗したユーザーに関する記録\n* `cluster_agent_deleted`：Kubernetes用エージェントの登録を削除したユーザーに関する記録\n* `cluster_agent_delete_failed`：Kubernetes用エージェントの登録を削除しようとしたものの、失敗したユーザーに関する記録\n\nこれらの監査イベントによって`cluster_agent_token_created`および`cluster_agent_token_revoked`監査イベントが拡張され、GitLabインスタンスの監査機能がさらに強化されます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/audit_event_types.html#deployment-management)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/462749)\n\n### **GitLab UIでSBOMの取り込みエラーが表示されるように**\n\nSaaS: Ultimate\nSelf-Managed: Ultimate\n\nGitLab 15.3では、CycloneDX SBOMの[取り込み](https://docs.gitlab.com/ee/ci/yaml/artifacts_reports.html#artifactsreportscyclonedx)が新たにサポートされました。SBOMレポートはCycloneDXスキーマと照らし合わせて検証されるものの、検証の一環として生成された警告やエラーはユーザーには表示されませんでした。\n\nGitLab 17.3では、このような検証メッセージをGitLabの画面上で確認できるようになり、プロジェクトレベルの脆弱性レポートと依存関係リストのページに表示されます。\nGitLabの画面上（プロジェクトレベルの脆弱性レポート、依存関係リストページ、パイプラインページの「ライセンス」と「セキュリティ」タブ）でSBOMの取り込みエラーを確認できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/dependency_list/)\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/14408)\n\n### **依存関係スキャンとライセンススキャンでRustをサポート**\n\nSaaS: Ultimate\nSelf-Managed: Ultimate\n\nコンポジション解析で、Rustでの依存関係スキャンとライセンススキャンのサポートを開始しました。Rustスキャンでは、`Cargo.lock`ファイルタイプをサポートします。\nプロジェクトでRustスキャンを有効にするには、[CI/CDコンポーネントの依存関係スキャン](https://gitlab.com/explore/catalog/components/dependency-scanning)の`cargo`テンプレートを使用してください。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/license_scanning_of_cyclonedx_files/#supported-languages-and-package-managers)\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/13093)\n\n### **ユーザープロファイルへのBluesky IDの追加**\n\nSaaS: Free、Premium、Ultimate\nSelf-Managed: Free、Premium、Ultimate\n\nGitLabプロファイルにBluesky did:plc識別子を追加できるようになりました。\nこの場を借りて、コントリビュートしてくれた[Dominique](https://domi.zip/)さんに感謝します！\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/#add-external-accounts-to-your-user-profile-page)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/451690)\n\n### **高度な検索のためのエンドツーエンドのインスタンスのインデックス作成**\n\nSaaS: Premium、Ultimate\nSelf-Managed: Premium、Ultimate\n\nGitLabで高度な検索を有効にする際に「**インスタンスにインデックスを作成**」を選択して、初期インデックスを作成したり、ゼロからインデックスを再作成したりできるようになりました。この設定では、サポートされているすべての種類のデータのインデックスが、統合されたElasticsearchまたはOpenSearchクラスターに作成されるため、`gitlab:elastic:index`のRakeタスクと同等の機能レベルが実現されます。\n\n初期インデックス作成のみ可能であったすべてのプロジェクトでのインデックス作成設定は、「**インスタンスにインデックスを作成**」設定に置き換わります。\n\n[ドキュメント](https://docs.gitlab.com/ee/integration/advanced_search/elasticsearch.html#index-the-instance)\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/271532)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_3/update_index_all_projects_to_allow_end_to_end_instance_indexing.png\">\n\n## **バグ修正、パフォーマンスの改善、UIの改善**\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験を届けることを約束します。\n\n以下のリンクをクリックして、17.3のバグ修正、パフォーマンス向上、UI改善についてすべてご覧ください。\n\n* [バグの修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.3)\n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=17.3)\n* [UIの改善](https://papercuts.gitlab.com/?milestone=17.3)\n\n## **非推奨事項**\n\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードをサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n* [コンプライアンスパイプライン](https://docs.gitlab.com/ee/update/deprecations.html#compliance-pipelines)\n* [CodeClimateベースのCode Qualityスキャンが削除されます](https://docs.gitlab.com/ee/update/deprecations.html#codeclimate-based-code-quality-scanning-will-be-removed)\n* [GitGuardianのシークレット検出をスキップするオプションの名前が変更されました](https://docs.gitlab.com/ee/update/deprecations.html#rename-options-to-skip-gitguardian-secret-detection)\n\n## **削除された機能と破壊的な変更**\n\n削除されたすべての機能の一覧は、[GitLabのドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更のRSSフィードをサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n## **GitLabのアップグレードに関する重要なお知らせ**\n\nバックグラウンドでの移行が完了されるようにするには、GitLab 17.4にアップグレードする前に、まずはGitLab 17.3にアップグレードする必要があります。\n\n### **変更履歴**\n\n変更内容をすべて表示するには、以下のページから変更履歴を確認してください。\n\n* [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)\n* [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)\n* [VS CodeのGitLabワークフロー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)\n* [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n### **インストール**\n\nGitLabを新規にインストールする場合は、[GitLabのダウンロードページ](file:///C:\\\\install\\\\)をご覧ください。\n\n### **更新**\n\n[更新ページ](https://about.gitlab.com/update/)を確認してください。\n\n### **ご不明な点がある場合**\n\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスして質問を投稿してください。\n\n### **GitLabサブスクリプションプラン**\n\n* [Freeプラン](https://about.gitlab.com/pricing/)\n\n  個人ユーザー向けの永久無料機能を提供\n\n* [Premiumプラン](https://about.gitlab.com/pricing/premium/)\n\n  チームの生産性と調整を強化\n\n* [Ultimateプラン](https://about.gitlab.com/pricing/ultimate/)\n\n  組織全体のセキュリティ、コンプライアンス、プランニングに対応\n\nGitLabのすべての機能を[無料](https://about.gitlab.com/free-trial/)でお試しいただけます。\n\n*監修：小松原 つかさ [@tkomatsubara](https://gitlab.com/tkomatsubara)\u003Cbr>\n（GitLab合同会社 ソリューションアーキテクト本部 シニアパートナーソリューションアーキテクト）*\n\n### 過去の日本語リリース情報\n\n- [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n- [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n- [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n- [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)\n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)\n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)\n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)\n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)\n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)\n",[672,671,14],"2024-09-24",{"slug":1273,"featured":92,"template":679},"gitlab-17-3-released","content:ja-jp:blog:gitlab-17-3-released.yml","Gitlab 17 3 Released","ja-jp/blog/gitlab-17-3-released.yml","ja-jp/blog/gitlab-17-3-released",{"_path":1279,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1280,"content":1286,"config":1291,"_id":1293,"_type":16,"title":1294,"_source":18,"_file":1295,"_stem":1296,"_extension":21},"/ja-jp/blog/gitlab-17-1-released",{"title":1281,"description":1282,"ogTitle":1281,"ogDescription":1282,"noIndex":6,"ogImage":1283,"ogUrl":1284,"ogSiteName":770,"ogType":771,"canonicalUrls":1284,"schema":1285},"GitLab 17.1リリース","GitLab 17.1でリリースした最新機能をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662125/Blog/Hero%20Images/17_1-cover-image.png","https://about.gitlab.com/blog/gitlab-17-1-released","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 17.1リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2024-08-08\",\n      }",{"title":1281,"description":1282,"authors":1287,"heroImage":1283,"date":1288,"body":1289,"category":14,"tags":1290},[676],"2024-08-08","__GitLab 17.1のリリースでモデルレジストリがベータ版で提供開始、さらにVS Codeで複数のGitLab Duoコード提案が利用可能に__\n\nこのたび、[ベータ版のモデルレジストリ](https://about.gitlab.com/releases/2024/06/20/gitlab-17-1-released/#model-registry-available-in-beta)、[VS Codeでの複数のGitLab Duoコード提案](https://about.gitlab.com/releases/2024/06/20/gitlab-17-1-released/#see-multiple-gitlab-duo-code-suggestions-in-vs-code)、[ベータ版のシークレットプッシュ保護](https://about.gitlab.com/releases/2024/06/20/gitlab-17-1-released/#secret-push-protection-available-in-beta)、[GitLab Runner Autoscalerなどの機能](https://about.gitlab.com/releases/2024/06/20/gitlab-17-1-released/#gitlab-runner-autoscaler-is-generally-available)を備えたGitLab17.1のリリースを発表しました。\u003Cbr>\n\nこれらの機能は、今回のリリースに含まれる45件以上の改善点のほんの一部です。この記事では、役に立つ最新情報をすべてご紹介していますので、ぜひ最後までお読みください。\u003Cbr>\n\nGitLab 17.1には、GitLabコミュニティのユーザーから340件以上ものコントリビュートがありました。ありがとうございました！GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはユーザーのみなさまの協力なしには実現しませんでした。\u003Cbr>\n\n来月のリリースで予定されている内容を先取りするには、17.2リリースのキックオフビデオも視聴できる[今後のリリースページ](https://about.gitlab.com/direction/kickoff/)をご覧ください。\u003Cbr>\n\n## 今月のMost Valuable Person（[MVP](https://about.gitlab.com/community/mvp/)）は[Shubham Kumar](https://gitlab.com/imskr)さんと[Joe Snyder](https://gitlab.com/joe-snyder)さんの2名が同時受賞\n\nMVPには、[誰もがGitLabコミュニティのコントリビューターを推薦できます](https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490)。現在の候補者を応援したり、他の誰かをノミネートしてみませんか。🙌\u003Cbr>\nShubham Kumarさんは[17.1で7つのイシューを完了するなど](https://gitlab.com/dashboard/issues?sort=due_date_desc&state=closed&assignee_username%5B%5D=imskr&milestone_title=17.1)、2021年以来一貫してGitLabにコントリビュートしてきました。 今では、そのコントリビューションのうち50以上がマージされるまでになりました。Shubhamさんは[GitLab Hero](https://about.gitlab.com/community/heroes/)であり、Google Summer of Codeの前コントリビューターでもあります。\u003Cbr>\n\nShubhamさんを推薦したのは、GitLabのシニアプロダクトマネージャー、[Christina Lohr](https://gitlab.com/lohrc)です。「Shubhamさんは、過去数週間～数か月にわたって特に[API](https://about.gitlab.com/ja-jp/blog/what-is-an-api)製品の問題を解決するために力を貸してくれました。Shubhamさんがコントリビュートしてくれた機能の数は膨大で、その内容も書ききれないほどです！」とChristinaは述べています。\u003Cbr>\n\nShubhamさんは「GitLabのオープンソースコミュニティは最高です。この機会をいただけたこと、そして高く評価していただいたことにとても感謝しています。今後もGitLabプラットフォームへのコントリビュートを続けていきたいです」とコメントしています。\u003Cbr>\n\nJoe Snyderさんは、GitLabのプリンシパルプロダクトマネージャーである[Kai Armstrong](https://gitlab.com/phikai)により、 [差分をメールに含まれないよう制限](https://gitlab.com/gitlab-org/gitlab/-/issues/24733)するという待望の機能のビルドで推薦されました。 このコントリビュートには、GitLab 15.3以来10件以上ものマージリクエストがありました。「この機能は大規模なもので、多くの努力、複雑な移行作業、製品への変更作業を経て提供が可能になりました。Joeさんはこの作業を完了のために努力を重ね、多くの管理者やコラボレーターと協力しながらマイルストーンに到達できました」とKaiは語っています。\u003Cbr>\n\nGitLabのプロジェクトマネージャーである[Jocelyn Eillis](https://gitlab.com/jocelynjane)は、 `[build:resource_group](https://gitlab.com/gitlab-org/gitlab/-/issues/361438)` の[ネストされた変数](https://gitlab.com/gitlab-org/gitlab/-/issues/361438)が[展開されない](https://gitlab.com/gitlab-org/gitlab/-/issues/361438)というバグを修正した功績を称えJoeさんを推薦しました。 Jocelynは「このバグ修正に関するお客様からの要望が多かったことに加え、さらに23の同意票が寄せられていました。レビュアーのフィードバックへの迅速な対応により、修正をGitLab 17.1に含めることができました」と述べています。\u003Cbr>\n\nこれは[GitLab 16.6](https://about.gitlab.com/releases/2023/11/16/gitlab-16-6-released/#mvp)以来、Joeさんが受け取る2つ目のGitLab MVPとなります。 Joeさんは[Kitware](https://www.kitware.com/)社のシニア調査開発エンジニアであり、2021年からGitLabへのコントリビュートを続けています。\n\n## GitLab 17.1でリリースされた主な改善点 \n\n### ベータ版のモデルレジストリ\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nGitLabでは、ベータ版のモデルレジストリを非常に重要な機能として位置付け、正式なサポートを開始しました。これにより、UIを介してモデルを直接追加、編集できるほか、MLflow統合機能を利用してGitLabをモデルレジストリのバックエンドとして利用できるようになりました。\u003Cbr>\n\nモデルレジストリは、データサイエンスチームが機械学習（ML）モデルとその関連するメタデータを管理するのに役立つハブであり、トレーニングを受けた機械学習（ML）モデルを組織が保存、バージョン管理、文書化、検出するための一元化された場所として機能します。これにより、モデルのライフサイクル全体にわたるコラボレーション、再現性、ガバナンスが向上します。\u003Cbr>\n\nGitLabはモデルレジストリをチームのコラボレーション、デプロイ、モニタリング、継続的なモデルのトレーニングの基礎となるコンセプトと考えており、ユーザーのみなさまの声をぜひ聞きたいと思っています。[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/465405)からお気軽に意見をお寄せください。こちらから折り返しご連絡いたします。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/ml/model_registry/) \u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/9423)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/8uyxk0vhifE?si=-fan7BaDKgqj8ZSe\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### VS Codeで複数のGitLab Duoコード提案を表示\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\nVS CodeのGitLab Duoコード提案に、利用可能な複数の提案の有無が表示されるようになりました。操作は簡単で、提案にカーソルを合わせ、矢印またはキーボードショートカットを使用して候補を切り替えられます。\u003Cbr>\n[ドキュメント](https://docs.gitlab.com/ee/user/project/repository/code_suggestions/supported_extensions.html#view-multiple-code-suggestions)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/issues/1325)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_1/multiple-code-suggestions-vs-code.png\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">\n\n### ベータ版シークレットプッシュの保護\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: -\u003Cbr>\n\nキーや[API](https://about.gitlab.com/ja-jp/blog/what-is-an-api)トークンなどのシークレット情報が誤ってGitリポジトリにコミットされた場合、リポジトリにアクセスできる人なら誰でも、悪意のある目的でそのシークレットのユーザーになりすますことができます。このリスクの対処として、ほとんどの組織では漏洩したシークレット情報を失効させて置き換える必要がありますが、そもそも情報がプッシュされなければ、修復にかける時間も必要なく、リスクを軽減できます。\u003Cbr>\n\nシークレットプッシュの保護は、GitLabにプッシュされた各コミットの内容をチェックします。[シークレット情報が検出されると](https://docs.gitlab.com/ee/user/application_security/secret_detection/secret_push_protection/detected_secrets.html)プッシュはブロックされ、次の事項を含むコミットに関する情報が表示されます。\u003Cbr>\n\n- シークレット情報を含むコミットID\n- シークレット情報を含むファイル名と行番号\n- シークレット情報のタイプ\u003Cbr>\n\nテストのためにシークレットプッシュ保護を回避する必要がある場合は、シークレットプッシュ検出をスキップすると、GitLabは監査イベントをログに記録して調査できるようにします。\u003Cbr>\n\nシークレットプッシュ保護は[ベータ](https://docs.gitlab.com/ee/policy/experiment-beta-support.html#beta)機能としてGitLab.comおよびDedicatedのユーザーに提供されており、[プロジェクトごとに](https://docs.gitlab.com/ee/user/application_security/secret_detection/secret_push_protection/index.html#enable-secret-push-protection-in-a-project)有効にできます。 [イシュー467408](https://gitlab.com/gitlab-org/gitlab/-/issues/467408)からフィードバックを投稿し、シークレットプッシュ保護の改善にご協力ください。\u003Cbr>\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/secret_detection/secret_push_protection)\u003Cbr>\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/12729)\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/2jBC3uBUlyU?si=hW3nu57X5yJVQr7r\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### GitLab Runner Autoscalerの一般提供開始\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n旧バージョンのGitLabでは、一部のユーザーはパブリッククラウドプラットフォームの仮想マシンインスタンスでGitLab Runnerの自動スケーリングソリューションが必要でした。その場合、レガシーな[Docker Machine executor](https://docs.gitlab.com/runner/configuration/autoscale.html)や、クラウドプロバイダのテクノロジーを使ってつなぎ合わせたカスタムソリューションに依存しなければなりませんでした。\u003Cbr>\n\n本リリースで、GitLab Runner Autoscalerが一般公開されます。GitLab Runner Autoscalerは、GitLabが開発したtaskscalerと[fleeting](https://docs.gitlab.com/runner/fleet_scaling/fleeting.html)テクノロジー、そしてGoogle Compute Engine用のクラウドプロバイダプラグインで構成されています。\n[ドキュメント](https://docs.gitlab.com/runner/runner_autoscale/)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29221)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_1/runner_fleeting_ga.png\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">\n\n### Snowflake MarketplaceでGitLabコネクタアプリケーションが利用可能に\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\n監査イベントが作成され、GitLabに保存されるようになります。今回のリリース以前は、監査イベントはGitLabからのアクセスのみで、GitLab UIを使用して結果を確認するか、すべての監査イベントを構造化されたJSONとして受信するようにストリーミング先を設定する必要がありました。\u003Cbr>\n\n一方でユーザーはSnowflakeといったSIEMソリューションなどのサードパーティの宛先に監査イベントを持つ機能も求めていました。それは次を可能にするからです：\u003Cbr>\n\n- GitLabを含む、組織の複数のシステムからのすべての監査イベントデータを簡単に表示、結合、操作、レポートすること\n- 特定の監査イベントのみを表示し、関心のある質問に迅速に回答\n- GitLab内で起きていることの全体像を把握し、事後確認できる\u003Cbr>\n\nユーザーがこうしたタスクを実行できるよう、Snowflake Marketplace用のGitLabコネクタアプリケーションを作成しました。このアプリケーションは監査イベント[API](https://about.gitlab.com/ja-jp/blog/what-is-an-api)を使用します。 この機能を使用するには、[Snowflake Marketplace](https://app.snowflake.com/marketplace/listing/GZTYZXESENG/gitlab-gitlab-data-connector)を使用してアプリケーションをデプロイ・管理する必要があります。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/integration/snowflake.html)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13004)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_1/gitlab-snowflake-connector.png\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">\n\n### Wikiユーザーエクスペリエンスの改善\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nGitLab 17.1のWiki機能はより統一され、ワークフローの効率が改善されました。\u003Cbr>\n\n- 新しいリポジトリのクローンボタンを使用すると、さらに[簡単かつ迅速にクローンを作成](https://gitlab.com/gitlab-org/gitlab/-/issues/281830)できます。 これによりコラボレーションが改善され、編集や表示の際のWikiコンテンツへのアクセスが高速化されます。\n- [削除オプションをわかりやすいデザイン](https://gitlab.com/gitlab-org/gitlab/-/issues/335169)に変更し、見つけやすい場所に移動しました。これによりWikiページの検索にかかる時間が短縮され、Wikiページの管理時に発生する可能性のあるエラーや混乱が最小限に抑えられます。\n- [空白のページが許可](https://gitlab.com/gitlab-org/gitlab/-/issues/221061)されることで、柔軟性が向上します。 必要に応じて空白のプレースホルダーを作成して、Wikiコンテンツの計画と整理に集中し、後で空白のページを埋めることもできます。\u003Cbr>\n\n今回の機能強化により、Wikiワークフローの利便性、発見性、コンテンツ管理機能が向上しました。GitLabでは、Wikiを効率的で使いやすいものにしたいと考えています。 クローンリポジトリへのアクセスを容易にし、主要なオプションを再配置して表示レベルを高め、空白のプレースホルダーを作成できるようにするなど、よりユーザーが利用しやすいプラットフォームになりました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/wiki/)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/452225)\u003Cbr>\n\n\u003Ciframe width=\"560\" height=\"315\" src=\"https://www.youtube.com/embed/t2z7sZoJ6oE?si=Xu22Y7ZIzLP2ByRd\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### 新しいバリューストリーム管理レポート生成ツール\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nバリューストリーム管理用の新しいレポート生成ツールの追加により、意思決定者がソフトウェア開発ライフサイクル（SDLC）の最適化をより効率的かつ効果的に行うことができるようになりました。\u003Cbr>\n[DevSecOps比較メトリクスレポート](https://gitlab.com/components/vsd-reports-generator#example-for-monthly-executive-value-streams-report)または[AIインパクト分析](https://about.gitlab.com/releases/2024/05/16/gitlab-17-0-released/#ai-impact-analytics-in-the-value-streams-dashboard)レポートを、GitLabイシューの関連情報とともに自動的かつ主体的に配信するよう設定できるようになりました。 スケジュールされたレポートを活用することで、マネージャーは必要なデータを求めて適切なダッシュボードを手動で検索するなどして時間を浪費することなく、インサイトを分析し、情報に基づいた意思決定に集中できます。\u003Cbr>\n[CI/CDカタログ](https://gitlab.com/explore/catalog)を使用するとスケジュールレポートツールにアクセスできます。\u003Cbr>\n[ドキュメント](https://docs.gitlab.com/ee/user/analytics/value_streams_dashboard.html#schedule-value-streams-dashboard-reports) \u003Cbr>\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/10880)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_1/17.1_vsm_reports2.png\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">\n\n### 署名にコンテナイメージを関連付け\n\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: -\u003Cbr>\n\nGitLabコンテナレジストリは、署名されたコンテナイメージとその署名を関連付けるようになりました。この改善により、ユーザーは次をより簡単に実行できます：\u003Cbr>\n\n- 署名されているイメージとそうでないイメージの特定\n- コンテナイメージに関連付けられている署名を見つけて検証\u003Cbr>\n\nこの機能はGitLab.comでのみ一般提供されています。 Self-Managedサポートはベータ版であり、ユーザーはベータ版の[次世代コンテナレジストリ](https://docs.gitlab.com/ee/administration/packages/container_registry_metadata_database.html)を有効にする必要があります。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/packages/container_registry/#container-image-signatures)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/7856)\u003Cbr>\n\u003Cimg src=\"https://about.gitlab.com/images/17_1/container-registry-signatures.png\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">\n\n### マニュアルジョブの確認の必須化設定\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nマニュアルジョブは、本番環境へのデプロイといったCIパイプラインで非常に重要な操作をトリガーするために使用できます。今回のリリースでは、マニュアルジョブが実行される前に確認を必須にするよう設定できるようになりました。 `manual_confirmation` と `when: manual` を使用すると、マニュアルジョブが実行された際にUIに確認ダイアログが表示されます。 マニュアルジョブの確認を必須化すると、セキュリティと操作に新たな保護レイヤーが追加されます。\u003Cbr>\nこの場を借りて、コミュニティにコントリビュートしてくれた[Phawin](https://gitlab.com/lifez)さんに感謝します！\u003Cbr>\n[ドキュメント](https://docs.gitlab.com/ee/ci/jobs/job_control.html#add-a-confirmation-dialog-for-manual-jobs)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/18906)\u003Cbr>\n\u003Cimg src=\"https://about.gitlab.com/images/17_1/ask-confirmation-on-manual-job.png\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">\n\n### グループ用Runnerフリートダッシュボード\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nグループレベルでSelf-ManagedされたRunnerフリートのオペレーターは、観測性に加え、Runnerフリートインフラストラクチャに関する重要な質問にすぐに回答できる能力が必要です。グループ用のRunnerフリートダッシュボードを使用すると、GitLab UIでRunnerフリートの観測性や実行可能なインサイトを直接得られるようになります。 これによりRunnerの健全性をすばやく判断できるほか、組織のターゲットサービスレベル目標におけるRunnerの使用状況メトリクスとCI/CDジョブキューサービス機能に関するインサイトを得られます。\u003Cbr>\nGitLab.comユーザーは、現在グループ向けに提供されているすべてのフリートダッシュボードメトリクスを利用できます。Self-Managedのユーザーはフリートダッシュボードメトリクスのほとんどの機能を使用できますが、__Runnerの使用状況__ と__ジョブが選択されるまでの待機時間__メトリクスを使用するには、ClickHouse分析データベースを構成する 必要があります。\u003Cbr>\n[ドキュメント](https://docs.gitlab.com/ee/ci/runners/runner_fleet_dashboard_groups.html)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/424789)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_1/runners-fleet-dashboard-groups-beta.png\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">\n\n## GitLab 17.1のその他の改善 \n\n### Webhook作成時の監査イベント\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\n監査イベントは、GitLabで実行される重要なアクションを記録します。 これまで、システム、グループ、プロジェクトのWebhookがユーザーによって追加される際に監査イベントは作成されませんでした。\u003Cbr>\nこのリリースでは、ユーザーがシステム、グループ、プロジェクトのWebhookを作成する際の監査イベントが追加されました。\u003Cbr>\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/audit_event_types.html#webhooks) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/8068) \u003Cbr>\n\n### APIを使用して選択したプロジェクトリレーションを再インポート\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n同じ種類の多くのアイテム（マージリクエストやパイプラインなど）を含むエクスポートファイルからプロジェクトをインポートする場合、アイテムの一部がインポートされないことがあります。\u003Cbr>\n\n本リリースでは、名前が付けられているリレーションを再インポートし、すでにインポートされているアイテムをスキップする[API](https://about.gitlab.com/ja-jp/blog/what-is-an-api)エンドポイントが追加されました。APIには以下の両方が必要です：\u003Cbr>\n- プロジェクトエクスポートアーカイブ\n- イシュー、マージリクエスト、パイプライン、マイルストーンのいずれかのタイプ\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/api/project_import_export#import-a-single-relation) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/455889)\u003Cbr>\n\n### REST APIを使用して実行中の直接転送移行をキャンセル\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nこれまで、実行中の直接転送移行をキャンセル[するにはRailsコンソールへのアクセスが必要](https://docs.gitlab.com/ee/user/group/import/direct_transfer_migrations.html#cancel-a-running-import)でした。\u003Cbr>\n\n今回のリリースでは、REST APIを使用して管理者が移行をキャンセルできる機能が追加されました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/api/bulk_imports.html#cancel-a-migration) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/438281)\u003Cbr>\n\n### イメージアップロード時に貼り付けるイメージの縮小\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nGitLab 17.1では高解像度画像の処理性能が強化され、アップロード中にイメージが縮小できるようになりました。以前、イメージは元のサイズで表示されていたため、表示のされかたが最適ではありませんでした。これにより、大きなイメージが含まれているページでもレイアウトが崩れないよう改善されました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/markdown.html#change-the-image-or-video-dimensions) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/419913)\u003Cbr>\n\n### GitLab APIコールでの相互TLSのPagesサポート\nSaaS: -\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nGitLabは[SSL証明書を使用してクライアント認証を実施](https://about.gitlab.com/releases/2024/06/20/gitlab-17-1-released/#:~:text=enforce%20client%20authentication%20with%20SSL%20certificates)するよう設定できますが、GitLab Pagesサービスはクライアント証明書を使うよう設定できないため、この機能と互換性がなく、内部[API](https://about.gitlab.com/ja-jp/blog/what-is-an-api)コールは却下されていました。\u003Cbr>\n\nGitLab 17.1以降GitLab Pagesのクライアント証明書の設定が可能となり、GitLab APIでクライアント認証を有効にしてGitLabインスタンスのセキュリティを強化できるようになりました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/pages/#support-mutual-tls-when-calling-the-gitlab-api) \u003Cbr>[イシュー](https://docs.gitlab.com/ee/administration/pages/#support-mutual-tls-when-calling-the-gitlab-api)\u003Cbr>\n\n### 名前の変更時にWikiページを新しいURLにリダイレクト\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nGitLab 17.1では、Wikiページのリダイレクト機能が大幅に強化されました。Wikiページの名前を変更後に誰かが以前のページにアクセスしようとすると自動的に新しいページにリダイレクトされ、既存のすべてのリンクが確実に機能するようになりました。この改善によってページ名の変更管理のワークフローが合理化され、全体的なナレッジマネジメントの作業体験が向上します。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/wiki/) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/257892)\u003Cbr>\n\n### エピックの進行率の把握\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\n子アイテムのウェイトの完了度合いから、エピック全体の進行状況を簡単に確認できるようになりました。階層ウィジェットに新しく追加された進行状況のロールアップにより、エピックの全作業範囲を簡単に把握し、進行状況を確認しながら作業を進められます。\u003Cbr>\n\nドキュメント\u003Ca href=\"https://https://docs.gitlab.com/ee/user/group/epics/manage_epics.html#view-epic-progress\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">Embedded content: https://https://docs.gitlab.com/ee/user/group/epics/manage_epics.html#view-epic-progress\u003C/a> \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/5163)\u003Cbr>\n\u003Cimg src=\"https://about.gitlab.com/images/17_1/weight_and_progress_information_in_epic.png\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">\n\n### コードレビューメールでの差分プレビューの無効化\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nマージリクエストでコードをレビューしてその行にコメントした場合、GitLabではその差分の数行を参加者への通知メールに含めるよう設定されています。一部の組織のポリシーではメールが安全性の低いシステムとして扱われていたり、メール用の独自のインフラストラクチャが管理されていない場合があり、IPやソースコードのアクセス制御にリスクが発生するおそれがあります。\u003Cbr>\n\nグループとプロジェクトに新しい設定が追加され、組織はマージリクエストメールから差分プレビューを削除できるようになりました。これにより、機密情報がGitLab以外に流出しないよう保護することができます。\u003Cbr>\nこの場を借りて、コミュニティにコントリビュートしてくれた[Joe Snyder](https://gitlab.com/joe-snyder)さんに感謝します！\n\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/manage#disable-diff-previews-in-email-notifications) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/24733)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_1/create-restrict-diffs-email.png\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">\n\n### GitLab Runner 17.1がリリース\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nGitLab Runner 17.1がリリースされます！ GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、軽量で拡張性の高いエージェントです。GitLab Runnerは、GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。\u003Cbr>\n新機能：\u003Cbr>\n\n- GCP Compute Engine用GitLab Runnerフリートプラグイン\u003Cbr>\n\nバグの修正：\u003Cbr>\n- Runnerヘルパーイメージのエントリポイントの欠如\u003Cbr>\n\nすべての変更の一覧は、GitLab Runnerの[変更履歴](https://gitlab.com/gitlab-org/gitlab-runner/blob/17-1-stable/CHANGELOG.md)で確認できます。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/runner) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/36942)\u003Cbr>\n\n### コンテナレジストリタグの公開日順でソート\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: -\u003Cbr>\n\nソースコードやパイプラインと一緒にDockerイメージまたはOCIイメージを表示、プッシュ、プルするには、GitLabコンテナレジストリを使用しますが、多くの場合、コンテナイメージのビルド後に正しい状態かどうかを確認する必要があります。ユーザーの多くが、ユーザーインターフェースを使用して正しいコンテナイメージを見つけることを難しく感じています。\u003Cbr>\n\nそんな問題を解決するため、コンテナレジストリのタグリストを公開日順にソートできるようになりました。この機能を使用すると、新しく公開されたコンテナイメージをすばやく検索して検証できます。\u003Cbr>\n\nこの機能はGitLab.comでのみ一般提供されています。次世代型コンテナレジストリはベータ版のため、Self-Managedサポートもベータ版となります。詳細については[コンテナレジストリメタデータデータベースのドキュメント](https://docs.gitlab.com/ee/administration/packages/container_registry_metadata_database.html)を参照してください。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/packages/container_registry/#view-the-container-registry) \u003Cbr>[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/7856)\u003Cbr>\n\n### APIセキュリティテストアナライザーの更新\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nGitLab 17.1は、[API](https://about.gitlab.com/ja-jp/blog/what-is-an-api)セキュリティテスト用に次の構成変数を追加しました：\u003Cbr>\n1.  `APISEC_SUCCESS_STATUS_CODES` は、APIセキュリティテストのスキャンジョブがパスしたかを定義するHTTP成功ステータスコードのリストを、カンマ区切りで作成します。\n2.  `APISEC_TARGET_CHECK_DISABLED` は、スキャン開始前にターゲットAPIが利用可能になるまでの待機を無効にします。\n3.  `APISEC_TARGET_CHECK_STATUS_CODE` は、APIターゲットの可用性チェックで想定されるステータスコードを指定します。 指定されていない場合、500以外のステータスコードをスキャナーに使用できます。\u003Cbr>\n4.  \nこうした新しい変数によりカスタマイズ性や自由度が向上し、スキャンを確実に成功させられるようになります。\u003Cbr>\n\nDAST APIは、16.10でAPIセキュリティテストに名前が変更されました。今後、変数名のプレフィックスは `APISEC` となります。 以前のプレフィックスは `DAST_API` でした。 `DAST_API` がプレフィックスとなっている変数は、18.0（2025年5月）までサポートされます。設定が期待通りに動作するように、できるだけ早く変数名を更新するようにしてください。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/api_security_testing/configuration/variables.html) \u003Cbr>[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/14170)\u003Cbr>\n\n### ファジングアナライザーの更新\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nGitLab 17.1は、ファジング用に次の構成変数を追加しました：\u003Cbr>\n\n1.  `FUZZAPI_SUCCESS_STATUS_CODES` は、ファジングのジョブがパスしたかを定義するHTTP成功ステータスコードのリストをカンマ区切りで作成します。\n2.  `FUZZAPI_TARGET_CHECK_SKIP` は、スキャン開始前にターゲットAPIが利用可能になるまでの待機を無効にします。\n3.  `FUZZAPI_TARGET_CHECK_STATUS_CODE` は、APIターゲットの可用性チェックで想定されるステータスコードを指定します。指定されていない場合、500以外のステータスコードをスキャナーに使用できます。\u003Cbr>\n\nこうした新しい変数によりカスタマイズ性や自由度が向上し、スキャンを確実に実行させられるようになります。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/api_fuzzing/configuration/variables.html) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/442699)\u003Cbr>\n\n### マージリクエスト認証ポリシーのフェールオープン/クローズ（ポリシーエディター）\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\n前回の[イテレーション](https://gitlab.com/groups/gitlab-org/-/epics/10816)に基づいてポリシーエディター内に新しいオプションを導入し、ユーザーがセキュリティポリシーをフェールオープンまたはフェールクローズに切り替えられるようになりました。 この拡張機能では、ポリシーエディタービュー内でより設定が簡単にできるようYAMLサポートを拡張します。\u003Cbr>\n\n例えばフェールオープンで設定されたマージリクエストポリシーは、基準を評価するのに十分なエビデンスがない場合に、マージリクエストをマージできます。エビデンスの欠如の理由として、アナライザーがプロジェクトで有効になっていないか、アナライザーがポリシーの評価結果を生成できなかったことが考えられます。このアプローチでは、チームが適切なスキャンの実行と実施を確実にできるよう、ポリシーを段階的にロールアウトできます。\n\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html#fallback_behavior) \u003Cbr>[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13227)\u003Cbr>\n\u003Cimg src=\"https://about.gitlab.com/images/17_1/fail-open.png\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">\n\n### プロジェクトオーナーに有効期限間近のアクセストークン通知を送信\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nプロジェクトオーナーと、ダイレクトメンバーシップを持つメンテナーの両方に、プロジェクトアクセストークンの有効期限が近づくとメール通知が送信されるようになりました。以前、この通知が送信されていたのはプロジェクトのメンテナーのみでした。この更新により、多くのユーザーがトークンの有効期限が近づいていることを通知で知れるようになります。\u003Cbr>\n\nこの場を借りて、コントリビュートしてくれた[Jacob Henner](https://gitlab.com/arcesium-henner)さんに感謝します！\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/security/token_overview.html#project-access-tokens) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/460818)\u003Cbr>\n\n### Omnibusの改善\nSaaS: -\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nGitlab 17.1には[Ubuntu Noble 24.04](https://docs.gitlab.com/ee/administration/package_information/supported_os.html)をサポートするパッケージが含まれています。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/omnibus/)\u003Cbr>\n\n### グループAPIを使用して `marked_for_deletion_on` の日付でグループをフィルタリング\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\nグループ[API](https://about.gitlab.com/ja-jp/blog/what-is-an-api)で `marked_for_deletion_on` 属性を使用して応答をフィルタリングできるようになりました。これを実行すると、特定の日付で削除するようマークされたグループが返されます。\u003Cbr>\n\nこの場を借りて、コミュニティにコントリビュートしてくれた[@imskr](https://gitlab.com/imskr)さんに感謝します！\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/api/groups.html#list-groups) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/429315)\u003Cbr>\n\n### 表示レベル選択の改善\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n以前、グループやプロジェクトの一般的な設定で表示されるのは許可された表示レベルの項目のみでした。そのため、特定のオプションが利用できないユーザーを混乱させたり、情報が正しく表示されないなどの状況が発生していました。新しいビューではすべての表示レベルを確認でき、選択できない項目はグレーで表示されます。さらに、ポップオーバーで項目が利用できない理由の詳細情報を確認できます。表示レベルが利用できない理由として、管理者による制限やプロジェクトまたは親グループの表示レベルとの競合などがあります。\u003Cbr>\n\n今回の変更で、希望する表示レベル選択時の競合の問題が解決できることを願っています。この場を借りて、コミュニティにコントリビュートしてくれた[@gerardo-navarro](https://gitlab.com/gerardo-navarro)さんに感謝します！\n\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/public_access.html#change-group-visibility) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/455668)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_1/improved-visibility-selection.png\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">\n\n### グループとプロジェクト用の新しいGraphQL API引数 `markedForDeletionOn`\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\n新しいGraphQL API引数 `markedForDeletionOn` を使用し、特定の日付で削除するようマークされたグループまたはプロジェクトを一覧表示できるようになりました。\u003Cbr>\n\nこの場を借りて、コミュニティにコントリビュートしてくれた[@imskr](https://gitlab.com/imskr)さんに感謝します！\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/api/graphql/reference/index.html#querygroups) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/463809)\u003Cbr>\n### グループバッジとプロジェクトバッジ用の新しいプレースホルダー\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n4つの新しいプレースホルダーを使用し、バッジリンクと画像URLを作成できるようになりました。\u003Cbr>\n\n-  `%{project_namespace}` -プロジェクト名前空間の完全なパスを参照\n-  `%{group_name} ` - グループ名を参照\n-  `%{gitlab_server} ` - グループまたはプロジェクトのサーバー名を参照\n-  `%{gitlab_pages_domain} ` - グループまたはプロジェクトのドメイン名を参照\u003Cbr>\n\nこの場を借りて、コミュニティにコントリビュートしてくれた[@TamsilAmani](https://gitlab.com/TamsilAmani)さんに感謝します！\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/badges.html#placeholders) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/22278)\u003Cbr>\n\n### 直接転送でインポートする際に、継承されたメンバーシップ構造を維持\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nこれまでは、直接転送での移行の場合は[継承されたメンバーシップ](https://about.gitlab.com/releases/2024/06/20/gitlab-17-1-released/#:~:text=Until%20now%2C-,inherited%20memberships,-were%20not%20imported)を確実にインポートすることはできませんでした。そのため、プロジェクトの継承メンバーは直接メンバーとしてインポートされていました。\u003Cbr>\n\n今回のリリースで、GitLabはプロジェクトのメンバーシップを移行する前に、まずグループメンバーシップを移行するよう変更されました。これにより、ソースのGitLabインスタンスで継承されたメンバーシップが複製されます。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/import/#memberships) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/458834)\u003Cbr>\n### REST APIによるグループフックのテスト\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\nこれまで、REST APIでテストできるのはプロジェクトフックのみでした。今回のリリースでは、指定されたグループのテストフックをトリガーできるようになりました。\u003Cbr>\n\nこのエンドポイントには、グループフックごとに毎分最大3つのリクエストという特別なレート制限があります。管理者は `web_hook_test_api_endpoint_rate_limit` 機能フラグを無効にすることで、Self-Managed GitLabとGitLab Dedicatedでこの制限を無効化できます。\u003Cbr>\n\nこの場を借りて、[コミュニティにコントリビュート](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/150486)してくれた[Phawin](https://gitlab.com/lifez)さんに感謝します！\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/api/groups.html#trigger-a-test-group-hook) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/455589)\u003Cbr>\n\n### REST APIを使用してカスタムWebhookヘッダーを設定\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nGitLab 16.11では、[Webhookを作成または編集する際のカスタムヘッダーを追加する機能](https://about.gitlab.com/releases/2024/04/18/gitlab-16-11-released/#custom-webhook-headers)を導入しました。\u003Cbr>\n\n今回のリリースでは、GitLab REST APIを使用してカスタムWebhookヘッダーを設定できるようになりました。\u003Cbr>\n\nこの場を借りて、[コミュニティにコントリビュート](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153768)してくれた[Niklas](https://gitlab.com/Taucher2003)さんに感謝します！\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/api/projects.html#set-a-custom-header) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/455528)\u003Cbr>\n\n### リッチテキストエディターでドラッグ可能なメディア\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n以前は、リッチテキストエディターでメディアを移動するには、各アイテムを手動でコピー＆ペーストする必要がありました。そのため、イシュー、エピック、Wikiにメディアを含める際によく遅延が発生していました。GitLab 17.1では、リッチテキストエディターでメディアをドラッグ＆ドロップできるようになり、編集時の効率が大幅に向上しました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/rich_text_editor.html) \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/452233)\u003Cbr>\n\n### よりスムーズなワークフローを実現するリアルタイムのボード最新情報\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n[ボード](https://docs.gitlab.com/ee/user/project/issue_board.html)上のイシューを更新する際のエクスペリエンスがよりスムーズになります！サイドバーで行った変更はボードに即座に反映され、再度更新する必要はありません。 この即時反映機能によってワークフローが合理化され、リアルタイムで内容を確認しながら更新をすばやく行うことができます。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/issue_board.html) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/468187)\u003Cbr>\n### タスクの所要時間を追跡\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nこのリリースでは推定時間を設定し、クイックアクションやタスクのサイドバーのタイムトラッキングウィジェットでタスクに費やした時間を記録できるようになりました。 タスクに費やした時間は、タスクのタイムトラッキングレポートで確認できます。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/time_tracking.html) \u003Cbr>[イシュー](https://docs.gitlab.com/ee/user/project/time_tracking.html)\u003Cbr>\n\n### Pages UIの更新\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nGitLab 17.1ではPagesユーザーインターフェイスが改善され、たとえば画面スペースをより効率的に使用することができるようになりました。今回のUIの改善は、Pagesを管理する際のユーザーエクスペリエンスと効率性の改善に焦点を当てたものです。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/pages/) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153250)\u003Cbr>\n### ユーザー定義変数を上書きできるユーザー権限管理の強化\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nユーザー定義の変数を上書きできるユーザーをより適切に管理できるよう、 `ci_pipeline_variables_minimum_role` プロジェクト設定が導入されました。 この新設定では既存の [`restrict_user_defined_variables`](https://docs.gitlab.com/ee/ci/variables/#restrict-who-can-override-variables) 設定よりもさらに自由度が向上し、上書きの権限をどのユーザーにも許可しない、もしくはデベロッパー、メンテナ、オーナー以上のロールを持つユーザーのみに制限できるようになりました。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/variables/#restrict-who-can-override-variables-by-user-minimum-role) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/440338)\u003Cbr>\n### コンテナイメージの最終公開日を表示\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: -\u003Cbr>\n\nこれまでは、公開されたタイムスタンプがコンテナレジストリユーザーインターフェースで正しく表示されない状況がよく発生しており、コンテナイメージを見つけて検証する際にタイムスタンプ内の重要なデータを確認することができませんでした。\u003Cbr>\n\nGitLab 17.1では、正確な `last_published_at` タイムスタンプを含めるようUIが更新されました。タイムスタンプは、__デプロイ > コンテナレジストリ__ に移動してタグを選択すると表示されます。 最終公開日はページ上部に表示されます。\u003Cbr>\n\nこの機能はGitLab.comでのみ一般提供されています。Self-Managedサポートはベータ版であり、ベータ版[次世代コンテナレジストリ](https://docs.gitlab.com/ee/administration/packages/container_registry_metadata_database.html)を有効にしたインスタンスでのみ利用できます。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/packages/container_registry/#view-the-container-registry) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/290949)\u003Cbr>\n\n### リリースページにリリースRSSアイコンを表示する\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n新しいリリースが投稿されたときに通知でのお知らせを希望しますか？GitLabでは、リリースをお知らせするRSSフィードの提供を開始しました。プロジェクトのリリースページにあるRSSアイコンから、リリースフィードにサブスクライブできます。\u003Cbr>\n\nこの場を借りて、コントリビュートしてくれた[Martin Schurz](https://gitlab.com/schurzi)さんに感謝します！\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/releases/#track-releases-with-an-rss-feed) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/30988)\u003Cbr>\n\n### レジストリのコンテナスキャン\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nGitLabのコンポジション解析が、レジストリのコンテナスキャンのサポートを開始しました。\u003Cbr>\n\nレジストリのコンテナのスキャンがプロジェクトで有効になっており、コンテナイメージがプロジェクトのコンテナレジストリにプッシュされている場合、GitLabはタグとスキャン制限を確認します。\u003Cbr>\n\nタグが `latest` でスキャン回数が制限（1日50回）に到達していない場合、GitLabはイメージ上で `container_scanning` ジョブを実行する新規パイプラインを作成します。 パイプラインはイメージをレジストリにプッシュしたユーザーに関連付けられます。\u003Cbr>\n\nスキャンジョブは、GitLabにアップロードされるCycloneDX SBOMを生成します。継続的な脆弱性スキャン機能が有効になり、SBOMで検出されたパッケージがスキャンされます。\n注：脆弱性スキャンは新しいアドバイザリが公開され、[パッケージメタデータが同期](https://docs.gitlab.com/ee/administration/settings/security_and_compliance.html)されている場合に実行されます。\u003Cbr>\n\n今回も新しくリリースされた機能に関するフィードバックをお寄せください。この[フィードバックイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/466117)にコメントすると、フィードバックを送信できます。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/container_scanning/) \u003Cbr>[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/2340)\u003Cbr>\n\n### 管理者がメールアドレスの一部分の入力でユーザー検索が可能に\nSaaS: -\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n管理者は、管理者エリアのユーザー概要ページからメールアドレスの一部を入力することでユーザーを検索できるようになりました。たとえば、特定のメールドメインでユーザーをフィルタリングすると、特定の機関に所属する全ユーザーを見つけることができます。権限のないユーザーが他のアカウントのメールアドレスを閲覧できないよう、この機能は管理者向けに制限されています。\u003Cbr>\n\nこの場を借りて、コミュニティにコントリビュートしてくれた[@zzaakiirr](https://gitlab.com/zzaakiirr)さんに感謝します！\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/admin_area.html#administering-users) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/20381)\u003Cbr>\n\n### カスタムロールの新しい権限\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nGitLab 17.1では、次の新しい権限でカスタムロールを作成できるようになりました。\u003Cbr>\n\n- [マージリクエスト設定の管理](https://docs.gitlab.com/ee/user/custom_roles/abilities.html#code-review-workflow)\n- [インテグレーションの管理](https://docs.gitlab.com/ee/user/custom_roles/abilities.html#integrations)\n- [デプロイトークンの管理](https://docs.gitlab.com/ee/user/custom_roles/abilities.html#continuous-delivery)\n- [CRMコンタクトを読む](https://docs.gitlab.com/ee/user/custom_roles/abilities.html#team-planning)\u003Cbr>\n\nカスタムロールでは同等の権限を持つユーザーを作成し、オーナーロールを持つユーザーの数を減らすことができます。これによってグループで必要なロールに特化し、不必要な権限の昇格を防げます。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/custom_roles.html) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/391760)\u003Cbr>\n\n++++++++++++\n\n### メンバーAPIを使用してユーザー名でメンバーを追加\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nこれまでは、メンバーAPIを使用する場合、メンバーのグループとプロジェクトへの追加には必ずユーザーIDを使用する必要がありました。今回のリリースで、ユーザー名でメンバーを追加できるようになりました。\u003Cbr>\n\nこの場を借りて、コミュニティにコントリビュートしてくれた[@imskr](https://gitlab.com/imskr)さんに感謝します！\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/api/members.html#add-a-member-to-a-group-or-project)\u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/28208)\u003Cbr>\n\n### プロジェクトAPIを使用して `marked_for_deletion_on` の日付でプロジェクトを絞り込む\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\nプロジェクトAPIで `marked_for_deletion_on` 属性を使用した応答の絞り込みができるようになりました。これを実行すると、特定の日付で削除するようマークされたプロジェクトが返されます。\u003Cbr>\n\nこの場を借りて、コミュニティにコントリビュートしてくれた[@imskr](https://gitlab.com/imskr)さんに感謝します！\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/api/projects.html#list-all-projects) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/463939)\u003Cbr>\n\n### GraphQL APIを使用したユーザーがコントリビュートしたプロジェクトを一覧表示\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n新しいGraphQL APIフィールド `User.contributedProjects` を使用し、ユーザーがコントリビュートしたプロジェクトを一覧表示できるようになりました。\u003Cbr>\n\nこの場を借りて、コミュニティにコントリビュートしてくれた[@yasuk](https://gitlab.com/yasuk)さんに感謝します！\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/api/graphql/reference/index.html#usercontributedprojects) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/450191)\u003Cbr>\n\n### バッジの新しい `%{latest_tag}` のプレースホルダー\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n `%{latest_tag}` プレースホルダーを使用してバッジリンクと画像URLを作成できるようになりました。 このプレースホルダーは、リポジトリに対して公開された最新のタグを参照します。\u003Cbr>\n\nこの場を借りて、コミュニティにコントリビュートしてくれた[@TamsilAmani](https://gitlab.com/TamsilAmani)さんに感謝します！\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/badges.html#placeholders) \u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/26420)\u003Cbr>\n\n### Exploreのソートとフィルター機能を更新\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nグループとプロジェクトのExploreページのソートとフィルター機能が更新され、フィルターバーが大きくなって読みやすくなりました。\u003Cbr>\n\nプロジェクトのExploreページでは __名前、作成日、更新日、スター__ などの標準化されたソートオプションを使用できるようになりました。また、ナビゲーション要素を使用すると昇順または降順で並べ替えることができます。 言語フィルターはフィルターメニューに移動しました。新しい __非アクティブ__ タブでは、より焦点を絞った検索ができるようアーカイブされたプロジェクトが表示されます。 さらに __ロール__ フィルターを使用すると  、オーナーとなっているプロジェクトを検索できます。\u003Cbr>\n\nグループのExploreページでは__名前、作成日、更新日__などの標準化されたソートオプションを使用できるようになりました。また、ナビゲーション要素を使用すると昇順または降順で並べ替えることができます。 \u003Cbr>\n\nこの変更についてのフィードバックは[イシュー438322](https://gitlab.com/gitlab-org/gitlab/-/issues/438322)で投稿できます。\n\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/working_with_projects.html#search-in-projects) \u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/434473)\u003Cbr>[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/434469)\u003Cbr>\n\u003Cimg src=\"https://about.gitlab.com/images/17_1/updated-explore-filtering.png\" class=\"embedly-card\" data-card-width=\"100%\" data-card-controls=\"0\">\n\n---\n## 実験的な機能\n\n### GitLab CLIでスタックされた差分の作成および管理\n\nスタックされた差分ワークフローでは、相互にビルドされた小規模な変更を作成し、最終的な機能を提供できます。以前は、スタックの変更はフィードバックに基づいてレビュー・更新されていましたが、このワークフローでは変更を継続してビルドすることで開発時間を短縮できます。\u003Cbr>\n\n[GitLab CLIの1.42.0リリース](https://about.gitlab.com/releases/2024/06/20/gitlab-17-1-released/#:~:text=1.42.0%20release%20of%20the%20GitLab%20CLI)では、変更のスタックの作成・管理ができる新しい `stack` コマンドが導入されています。 スタックの作成後も、引き続き変更を加えたり、変更を同期したり、スタック内のさまざまな変更に移動したり、以前の変更を修正したりできます。\u003Cbr>\n\nスタックされた差分はGitLab CLIで完全に管理されるため、最新バージョンのCLIをインストール後すぐに使用を開始できます。新しい `stack` コマンドの動作を確認し、機能の仕組みについて詳しく見るにはこの[動画](https://www.youtube.com/watch?v=TOQOV8PWYic)をご覧ください。\u003Cbr>\n\nGitLab CLIを使用したスタックされた差分に関するフィードバックは、[イシュー7473](https://gitlab.com/gitlab-org/cli/-/issues/7473)で投稿できます。\n\n---\n## バグの修正、パフォーマンスの改善、UIの改善\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けできるよう尽力しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用する全ての人にスムーズでシームレスな体験を届けることを約束します。\u003Cbr>\n\n以下のリンクをクリックして17.1のバグ修正、パフォーマンス向上、UI改善についてすべてご覧ください。\n- [バグの修正\n](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=16.11)\n- [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=16.11)\n- [UIの改善\n](https://nicolasdular.gitlab.io/gitlab-polish-gallery/?milestone=16.11)\n\n---\n\n## 非推奨事項\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabのドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受けるには、[破壊的な変更のRSSフィードをサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\u003Cbr>\n\n-  [OpenTofu CI/CDテンプレート](https://docs.gitlab.com/ee/update/deprecations.html#opentofu-cicd-template)\n-  [コンテナレジストリ通知の「threshold」が「maxretries」に置き換えられます](https://docs.gitlab.com/ee/update/deprecations.html#replace-threshold-with-maxretries-for-container-registry-notifications)\n\n---\n## 削除された機能と変更点 \n\n消去されたすべての機能の一覧は、[GitLabのドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。 今後の破壊的な変更について通知を受けるには、[破壊的な変更のRSSフィードをサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n---\n\n### 変更履歴\n変更内容をすべて表示するには、以下のページから変更履歴を確認してください。\n\n- [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)\n- [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)\n- [VS CodeのGitLabワークフロー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)\n- [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n### インストール\nGitLabを新規にインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/install/)をご覧ください。\n### 更新\n[更新ページ](https://about.gitlab.com/update/)を確認してください。\n### ご不明な点がある場合\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスし質問を投稿してください。\u003Cbr>\u003Cbr>\n\n*監修：佐々木 直晴 [@naosasaki](https://gitlab.com/naosasaki) （GitLab合同会社 ソリューションアーキテクト本部 シニアソリューションアーキテクト）*\n\n### 過去の日本語リリース情報\n\n- [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n- [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n- [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n- [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)  \n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)  \n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)  \n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)  \n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)  \n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)\n",[672,14,671],{"slug":1292,"featured":92,"template":679},"gitlab-17-1-released","content:ja-jp:blog:gitlab-17-1-released.yml","Gitlab 17 1 Released","ja-jp/blog/gitlab-17-1-released.yml","ja-jp/blog/gitlab-17-1-released",{"_path":1298,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1299,"content":1305,"config":1311,"_id":1313,"_type":16,"title":1314,"_source":18,"_file":1315,"_stem":1316,"_extension":21},"/ja-jp/blog/gitlab-17-2-released",{"title":1300,"description":1301,"ogTitle":1300,"ogDescription":1301,"noIndex":6,"ogImage":1302,"ogUrl":1303,"ogSiteName":770,"ogType":771,"canonicalUrls":1303,"schema":1304},"GitLab 17.2リリース","GitLab 17.2でリリースした最新機能をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662130/Blog/Hero%20Images/17-2-cover.jpg","https://about.gitlab.com/blog/gitlab-17-2-released","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 17.2リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2024-07-18\",\n      }",{"title":1300,"description":1301,"authors":1306,"heroImage":1302,"date":1307,"body":1308,"category":14,"tags":1309,"updatedDate":1310},[676],"2024-07-18","**GitLab 17.2のリリースで、ログストリーミング、新しいパイプライン実行セキュリティポリシー、脆弱性の説明機能の一般提供を開始**\n\nこのたび、GitLab 17.2のリリースを発表しました。このリリースでは、[脆弱性の説明機能の一般提供が開始され、さらにGitLab Duoと統合されることで](\\#bookmark=id.gjdgxs)、SASTの脆弱性を把握できるようになりました。また、[Kubernetesのログストリーミングのサポート](\\#bookmark=id.30j0zll)により、GitLab上でワークロードの問題を解決できるようになったほか、CI/CDジョブの実行を強制する新たな[タイプのパイプライン実行セキュリティポリシー](\\#bookmark=id.1fob9te)、リモート開発環境での生産性の向上に役立つ[GitLabワークスペースでのDuoチャットとコード提案のサポート](\\#bookmark=id.3znysh7)など、さまざまな機能が追加されました。これらの機能は、今回のリリースで追加された30を超える改善点のほんの一部です。この記事では、お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。  \n\nGitLab 17.2には、GitLabコミュニティのメンバーのみなさまから160件以上ものコントリビュートがありました。GitLabは[誰もがコントリビュートできる](https://about.gitlab.com/community/contribute/)プラットフォームであり、今回のリリースはみなさまのご協力なしには実現できませんでした。ご協力いただき誠にありがとうございました！  \n\n来月のリリースに向けたプレビューは、[今後のリリースページ](about:blank)をご覧ください。17.3リリースのキックオフビデオもご視聴いただけます。  \n\n## **今月のMost Valuable Person（[MVP](about:blank)）は[Phawin Khongkhasawan](https://gitlab.com/lifez)さんが受賞**\n\n[誰もがGitLabコミュニティのコントリビューターをMVPに推薦できます](https://gitlab.com/gitlab-org/developer-relations/contributor-success/team-task/-/issues/490)。積極的に活動している候補者を応援したり、他の誰かをノミネートしてみませんか。🙌  \n\n[Jitta社](https://www.jitta.com/)のテクニカルリードであるPhawin Khongkhasawanさんは、2024年2月からGitLabにコントリビュートしてくださっています。わずか数か月のうちに、Phawinさんは20件を超えるコントリビュートをマージしました。それらのコントリビュートは、リリース[16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)、[17.0](https://about.gitlab.com/releases/2024/05/16/gitlab-17-0-released/\\#customize-avatars-for-users)、[17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)に含まれています。  \n\nPhawinさんは、[API経由でのプロジェクトテストWebhookのトリガーを許可する](https://gitlab.com/gitlab-org/gitlab/-/issues/455589)リクエストなど、Webhook関連の機能を改善したことが評価され、GitLabのプロダクトマネージャーである[Magdalena Frankiewicz](https://gitlab.com/m\\_frankiewicz)に初めて推薦されました。GitLabのエンジニア[Marc Shaw](https://gitlab.com/marc\\_shaw)と[Jose Ivan Vargas](https://gitlab.com/jivanvl)、またGitLabのプロダクトマネージャー[Rutvik Shah](https://gitlab.com/rutshah)は、[GitLabのコアバリュー](https://handbook.gitlab.com/handbook/values/)であるコラボレーションとイテレーションに対するPhawinさんの忍耐強い取り組みに注目しました。  \n\nGitLabのスタッフバックエンドエンジニアである[Patrick Bajao](https://gitlab.com/patrickbajao)は、「”[Add order by merged\\_at](https://gitlab.com/gitlab-org/gitlab/-/merge\\_requests/147052)機能”を完成まで導いたPhawinさんの仕事ぶり、忍耐強さ、そして粘り強さには本当に感謝しています」と述べています。「マージされデプロイされるまでには、いくつかのマイルストーンを要しましたが、Phawinさんが手を止めることはなく、一緒に取り組んでくださいました」  \n\n新たに加わったコントリビューターでも、すぐに影響をもたらし、GitLabの共同開発に貢献できることを示してくださったPhawinさんに心から感謝申し上げます。\n\n## **GitLab 17.2でリリースされた主な改善点**\n\n### [**Kubernetesのポッドとコンテナのログストリーミング**](\\#bookmark=id.30j0zll)\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLab 16.1でKubernetesポッドのリストと詳細ビューを導入したものの、ワークロードを詳しく分析するには、引き続きサードパーティのツールを使用する必要がありました。本リリースでGitLabにポッドとコンテナのログストリーミングビューが追加されたため、直接アプリケーション配信ツール上で環境全体の問題をすばやく確認して、問題を解決できるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/environments/kubernetes\\_dashboard.html)   \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13793)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_2/k8s-logs-view.png\">\n\n### **変更のリクエストによるマージリクエストのブロック**\n\nSaaS: Premium、Ultimate  \nSelf-Managed: Premium、Ultimate\n\nレビューを行う際は、最後に`承認`、`コメント`、`変更のリクエスト`のいずれかを選択できます（[GitLab 16.9でリリース](https://about.gitlab.com/releases/2024/02/15/gitlab-16-9-released/\\#request-changes-on-merge-requests)）。レビューの最中に、解決されるまでマージリクエストを実行できないような変更が見つかる可能性があります。その場合、`変更のリクエスト`を行って、レビューを完了します。  \n\nこの度、変更がリクエストされると、そのリクエストが解決されるまでマージを防止するマージチェックがGitLabに追加されました。変更のリクエストを解決するには、最初に変更をリクエストしたユーザーがマージリクエストを再度レビューしてから、承認する必要があります。最初に変更をリクエストしたユーザーが承認できない場合、マージ権限を持つユーザーであれば誰でも変更リクエストを**バイパス**できるため、開発を続行できます。  \n\n[イシュー455339](https://gitlab.com/gitlab-org/gitlab/-/issues/455339)でこの新機能に関するフィードバックをぜひお寄せください。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/merge\\_requests/reviews/index.html\\#prevent-merge-when-you-request-changes)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/761)   \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/11719) \n\n\u003Cimg src=\"https://about.gitlab.com/images/17_2/create-block-mr-request-changes.png\">\n\n### **脆弱性の説明**\n\nSaaS: Ultimate、Duo Enterprise  \nSelf-Managed: Ultimate、Duo Enterprise\n\n脆弱性の説明がGitLab Duoチャットの一部として、一般提供されました。脆弱性の説明機能を使用すれば、SASTの脆弱性が見つかった場合に、チャットを開いて脆弱性についてより深く理解し、どのように悪用される可能性があるかを確認し、適用可能な修正方法を検討できます。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/application\\_security/vulnerabilities/\\#explaining-a-vulnerability)   \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/10642)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_2/vulnerability_explanation_duo_chat.png\">\n\n### **OAuth 2.0デバイスの認証付与サポート**\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\n[OAuth 2.0デバイスの認証付与フロー](https://datatracker.ietf.org/doc/html/rfc8628)がGitLabでサポートされるようになりました。このフローを使用すれば、入力制限によりブラウザを使用できないデバイスからでも、GitLabのユーザー認証を安全に行えます。これにより、ヘッドレスサーバーやUIがない、またはUIが制限されている他のデバイスからGitLabサービスを利用する際に、デバイスの認証付与プロセスが最適です。この場を借りて、コントリビュートしてくれた[John Parent](https://kitware.com/)さんに感謝します！  \n\n[ドキュメント](https://docs.gitlab.com/ee/api/oauth2.html\\#device-authorization-grant-flow)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/332682)\n\n\u003Ciframe width=\"898\" height=\"505\" src=\"https://www.youtube.com/embed/jwocmqtKpJs\" title=\"GitLab OAuth2 Device Auth Demo\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### **パイプライン実行ポリシーのタイプ**\n\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\nパイプライン実行ポリシーは、汎用的なCIジョブやスクリプト、命令の実行を強制できる新しいタイプのセキュリティポリシーです。\n\nセキュリティチームやコンプライアンスチームは、このパイプライン実行ポリシータイプを使用することで、カスタマイズした[GitLabセキュリティスキャンテンプレート](https://gitlab.com/gitlab-org/gitlab/-/tree/master/lib/gitlab/ci/templates/Jobs)や、[GitLabまたはパートナーがサポートするCIテンプレート](https://gitlab.com/gitlab-org/gitlab/-/tree/master/lib/gitlab/ci/templates)、サードパーティのセキュリティスキャンテンプレートを適用できるほか、CIジョブ経由でカスタムレポートルール、またGitLab CI経由でカスタムスクリプトやルールを実施できます。\n\nパイプライン実行ポリシーには、「インジェクション」と「上書き」の2種類のモードがあります。*インジェクション*モードでは、プロジェクトのCI/CDパイプラインにジョブが挿入されます。*上書き*モードでは、プロジェクトのCI/CDパイプライン設定が置き換えられます。  \n\nその他すべてのGitLabポリシーと同様、ポリシーの作成・管理担当として指定されたセキュリティおよびコンプライアンスチームのメンバーが一元的に実施を管理できます。最初の[スキャン実行ポリシーを作成して、始め方を学びましょう！](https://docs.gitlab.com/ee/tutorials/scan\\_execution\\_policy/)！  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/application\\_security/policies/pipeline\\_execution\\_policies.html)   \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13266)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_2/pipeline-execution-policy-rp.png\">\n\n### **パイプラインのシークレット検出におけるカスタムルールセットのサポートの拡張**\n\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\nパイプラインのシークレット検出におけるカスタムルールセットのサポートを拡張しました。  \nリモートルールセットを設定する際に、新しいタイプのパススルーとして `git` と `url` を使用できます。これにより、複数のプロジェクト間でルールセットの設定を共有するなど、ワークフローの管理を簡単に行えます。\n\nまた、これらの新しいタイプのパススルーを使用して、リモートルールセットでデフォルト設定を拡張することもできます。\n\nまた、アナライザーでは次の機能もサポートされるようになりました。\n\n* 最大20のパススルーを 単一の設定に連結し、事前定義されたルールを置き換える  \n* パススルーに環境変数を含める  \n* パススルーの読み込み時にタイムアウトを設定する  \n* ルールセット設定でTOML構文を検証する\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application\\_security/secret\\_detection/pipeline/\\#custom-rulesets)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/336395)\u003Cbr>\n[マージリクエスト](https://gitlab.com/gitlab-org/security-products/analyzers/secrets/-/merge\\_requests/310) \n\n\u003Cimg src=\"https://about.gitlab.com/images/17_2/secrets-expanded-custom-rulesets-support.png\">\n\n### **ワークスペースでGitLab Duoチャットとコード提案が利用可能に**\n\nSaaS: Premium、Ultimate、Duo Pro、Duo Enterprise  \nSelf-Managed: Premium、Ultimate、Duo Pro、Duo Enterprise\n\nワークスペースで[GitLab Duoチャット](https://docs.gitlab.com/ee/user/gitlab\\_duo\\_chat/)と[コード提案](https://docs.gitlab.com/ee/user/project/repository/code\\_suggestions/)を利用できるようになりました！すぐに回答が必要な場合や、コードを効率的に改善したい場合に、生産性を向上させ、ワークフローを効率化するように設計されたDuoチャットとコード提案を使用すれば、これまで以上に効率的かつ効果的にワークスペースでのリモート開発を進められます。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/gitlab\\_duo/)   \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/12780)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_2/workspaces_duo.png\">\n\n## **GitLab 17.2のその他の改善**\n\n### **削除されたブランチがJira開発パネルで消去**\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nこれまでは[Jira Cloudアプリ向けGitLab](https://docs.gitlab.com/ee/integration/jira/connect-app.html)の使用時に、GitLabでブランチを削除した場合でも、Jira開発パネルにはそのブランチが表示されていました。また、削除したブランチを選択すると、GitLabで`404`エラーが発生していました。  \n\n本リリースから、GitLabでブランチを削除した場合、Jira開発パネルから消去されます。  \n\n[ドキュメント](https://docs.gitlab.com/ee/integration/jira/development\\_panel.html\\#feature-availability)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/351625)\n\n### **UIにインポート済みのアイテムであることが表示**\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLabに、[他のSCMソリューション](https://docs.gitlab.com/ee/user/project/import/\\#supported-import-sources)からプロジェクトをインポートできます。ただし、プロジェクトアイテムがインポートされたものか、またはGitLabインスタンスで作成されたものかを判断するのは困難でした。  \n\n本リリースでは、作成者が特定のユーザーであることが明らかになっているGitHub、Gitea、Bitbucket Server、Bitbucket Cloudからインポートされたアイテムに表示インジケーターを追加しました。対象となるアイテムは、マージリクエスト、イシュー、メモなどです。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/import/\\#supported-import-sources)   \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13825)\n\n### **イシューイベントのWebhookにタイプ属性を追加**\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nイシュー、タスク、インシデント、要求事項、目標、主要な成果はすべて、**イシューイベント**のWebhookカテゴリで、ペイロードをトリガーします。これまでは、イベントペイロード内でWebhookをトリガーしたオブジェクトのタイプをすばやく特定する方法がありませんでした。本リリースでは、**イシューイベント**、**コメント**、**非公開のイシューイベント**、**絵文字イベント**トリガー内のペイロードで利用可能な `object_attributes.type` 属性が導入されました。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/integrations/webhook\\_events.html\\#issue-events)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/467415)\n\n### **Wikiページのタイトルとパスフィールドを分離**\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLab 17.2では、Wikiページのタイトルはパスと切り離されています。以前のリリースでは、ページタイトルが変更された場合、パスも変更され、ページへのリンクが破損してしまう可能性がありました。本リリースではWikiページのタイトルが変更されても、パスは変わりません。Wikiページのパスが変更された場合でも、自動リダイレクトが設定されるため、リンクが壊れることはありません。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/wiki/)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/30758)\n\n### **マージコミットメッセージ生成の一般提供を開始**\nSaaS: Ultimate、Duo Enterprise  \nSelf-Managed: Ultimate、Duo Enterprise\n\nコミットメッセージの作成は、コードベースのどの部分がどのような理由で変更されたのかを、その後他のユーザーが確実に把握できるようにするために不可欠です。変更した可能性のあるすべての内容を考慮した上で、変更点を効果的に伝えられるメッセージを作成するのは大変です。  \n\n本リリースでは、GitLab Duoによるマージコミットの生成の一般提供が開始され、すべてのマージリクエストで質の高いコミットメッセージを作成できるようになりました。マージする前に、マージウィジェットの「**コミットメッセージを編集**」選択し、「**コミットメッセージを生成**」オプションを使用してコミットメッセージのドラフトを生成します。  \n\nこの新しいGitLab Duo機能は、デベロッパーがプロジェクトのコミット履歴を貴重なリソースとしてその後活用できるようにする上で最適です。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/gitlab\\_duo/index.html\\#merge-commit-message-generation)   \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13661)\n\n### **Pure SSH転送プロトコルによるLFS**  \nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\n2021年9月に、[`git-lfs` 3.0.0](https://github.com/git-lfs/git-lfs/blob/main/CHANGELOG.md\\#300-24-sep-2021)がリリースされ、HTTPの代わりにSSHを転送プロトコルとして使用できるようになりました。それ以前のバージョンでは、転送プロトコルとしてHTTPのみがサポートされていました。そのため、一部のユーザーは、GitLabで `git-lfs` を使用できませんでした。本リリースでは、 `git-lfs` の転送プロトコルとして、HTTPの代わりにSSHを使用できるようになりました。  \n\nこの場を借りて、コントリビュートしてくれた[Kyle Edwards](https://gitlab.com/KyleFromKitware)さんと[Joe Snyder](https://gitlab.com/joe-snyder)さんに感謝します！  \n\n[ドキュメント](https://docs.gitlab.com/ee/administration/lfs/\\#pure-ssh-transfer-protocol)  \u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/11872)\n\n### **パイプラインスケジュールのソートオプション**\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nパイプラインスケジュールリストを説明、参照、次回の実行、作成日、更新日の順でソートできるようになりました。  \n\n[ドキュメント](https://docs.gitlab.com/ee/ci/pipelines/schedules.html)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/37246)\n\n### **保護環境へのデプロイと承認がトリガーとなり、監査イベントを生成** \nSaaS: Premium、Ultimate  \nSelf-Managed: Premium、Ultimate\n\nデプロイの承認など、デプロイイベントの記録にアクセスできるようにしておくことは、コンプライアンス管理を行う上で不可欠です。これまで、GitLabではデプロイ関連の監査イベントが提供されていなかったため、コンプライアンスマネージャーはカスタムツールを使用するか、GitLab上で該当するデータを直接検索する必要がありました。本リリースによりGitLabは、次の3種類の監査イベントの提供を開始しました。\n\n* `deployment_started` デプロイジョブを開始したユーザーと開始日時を記録  \n* `deployment_approved` デプロイジョブを承認したユーザーと承認日時を記録  \n* `deployment_rejected` デプロイジョブを却下したユーザーとその日時を記録\n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/audit\\_event\\_types.html\\#continuous-delivery)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/456687)\n\n### **APIセキュリティテストで署名付き認証リクエストをサポート**\n\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\nAPIセキュリティには、スキャナーから送信されたリクエストを変更できる「上書き」機能がすでにサポートされていますが、事前に上書きを設定する必要があり、リクエストに応じて変更することはできません。GitLab 17.2では、「リクエストに基づくスクリプト」として`APISEC_PER_REQUEST_SCRIPT`が追加され、各リクエストを送信する前に呼び出されるC\\#スクリプトをユーザーが提供できるようになりました。これにより、認証の一環としてシークレットを使用したリクエストへの「署名」をサポートします。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/application\\_security/api\\_security\\_testing/configuration/variables.html)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/458825)\n\n### **DASTアナライザーの改善**\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\n17.2リリースのマイルストーンでは、以下の改善を行いました。\n\n1. 3種類のチェックを新たに追加しました。\n\n* チェック506.1は、Polyfill.io CDNの乗っ取りによって侵害された可能性の高いリクエストURLを特定するパッシブチェックです。  \n* チェック384.1は、有効なセッション識別子が悪意のある人物によって再利用される可能性をもたらすセッション固定の弱点を特定するパッシブチェックです。  \n* チェック16.11は、HTTPのTRACEデバッグメソッドが本番サーバーでいつ有効になっているかを特定するアクティブチェックです。有効になっている場合、誤って機密情報が公開される恐れがあります。\n\n2. 誤検出を減らすため、以下のバグ修正を行いました。\n\n* DASTチェック614.1（Secure属性なしの機密性の高いCookie）と1004.1（HttpOnly属性なしの機密性の高いCookie）では、サイトで以前に設定された有効期限によりCookieが消去された場合、検出結果が生成されなくなりました  \n* DASTチェック1336.1 （サーバーサイドテンプレートインジェクション）では、攻撃の成功を判定するために、HTTPレスポンスステータスコード「500」に依存しなくなりました\n\n3. 以下の機能強化を行いました。\n\n* DASTの脆弱性検出で、すべてのレスポンスヘッダーが証拠として提示されるようになりました。この追加情報の提供により、調査結果のトリアージに費やす時間が短縮されます  \n* Sitemap.xmlファイルをクロールして追加のURLを取得できるようになりました。これにより、ターゲットWebサイトのカバレッジが向上します\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application\\_security/dast/browser/checks/)   \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/13411)\n\n### **Self-Managedでシークレットプッシュ保護が利用可能に。また、漏えいの可能性に関する警告を改善**\n\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\n17.2リリースのマイルストーンでは、以下の改善を行いました。\n\n* Self-Managedをご利用のお客様を対象に、シークレットプッシュ保護（ベータ）がご利用いただけるようになりました。管理者により[インスタンス全体で本機能が有効化](https://docs.gitlab.com/ee/user/application\\_security/secret\\_detection/secret\\_push\\_protection/\\#allow-the-use-of-secret-push-protection-in-your-gitlab-instance)されたら、ドキュメントを参照の上、プロジェクトで[プッシュ保護を有効](https://docs.gitlab.com/ee/user/application\\_security/secret\\_detection/secret\\_push\\_protection/\\#enable-secret-push-protection-in-a-project)にしてください  \n* [テキストコンテンツにおける漏えいの可能性に関する警告](https://docs.gitlab.com/ee/user/application\\_security/secret\\_detection/client/)の内容がより詳しくなりました。これにより、イシュー、エピック、MRのいずれかの説明やコメントにおいて、どのような種類の機密情報が漏えいしようとしているのかを理解しやすくなりました\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application\\_security/secret\\_detection/)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/412229)  \u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13107) \n\n### **GitLabアナライザーごとに`latest`テンプレートを実行できるよう「スキャン実行ポリシー」を拡張**\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\n[スキャン実行ポリシー](https://docs.gitlab.com/ee/user/application\\_security/policies/scan-execution-policies.html)が拡張され、ポリシールールを定義する際に、`default` と `latest` のGitLabテンプレートのどちらかを選べるようになりました。`default` では現在の動作が反映されている一方、ポリシーを `latest` に更新することで、 指定されたセキュリティアナライザーの最新テンプレートでのみ利用可能な機能を使用できます。\n\n`latest` テンプレートの活用により、`latest` テンプレートで有効になっている他のルールと一緒に、マージリクエストパイプラインで確実にスキャンを実行できるようになりました。これまでは、ブランチパイプライン、または指定されたスケジュールに限定されていました。\n\n注：ポリシーを変更する前に、`default` と `latest` テンプレートの相違点をすべてチェックして、ニーズに合っているかどうかを確認してください！\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application\\_security/policies/scan-execution-policies.html)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/415427)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_2/latest-template-image.png\">\n\n### **OAuth認証画面の改善**\n\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nOAuth認証画面で、許可する認証がより明確に説明されるようになりました。また、GitLabが提供するアプリケーションに関しては「erified by GitLab」セクションも表示されます。これまでは、GitLabによって提供されたアプリケーションであってもそうでない場合でも、ユーザーエクスペリエンスは同じでしたが、この新機能により、信頼性がさらに向上します。\n\n[ドキュメント](https://docs.gitlab.com/ee/integration/oauth\\_provider.html)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/462655)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_2/govern_oauth_improvements.png\">\n\n### **インスタンス管理者の設定プロセスを効率化**\nSaaS: \\-  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLabの新規インストール時の管理者による設定プロセスが効率化され、より安全になりました。デフォルトの管理者用rootメールアドレスがランダムに設定されるようになったため、管理者はアクセス可能なメールアドレスに変更する必要があります。以前は、この手順を行うのが遅くなり、管理者がメールアドレスの変更を忘れてしまう恐れがありました。\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/458985)\n\n\u003Cimg src=\"https://about.gitlab.com/images/17_2/govern_admin_setup.png\">\n\n### ** `rules:changes:compare_to` でのCI/CD変数の使用をサポート**  \nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLab 15.3では、`rules:change`に[`compare_to`キーワード](https://docs.gitlab.com/ee/ci/yaml/\\#ruleschangescompare\\_to)を導入しました。これにより、比較対象として正確な参照先を定義できるようになりました。GitLab 17.2からは、このキーワードでCI/CD変数を使えるようになっため、より簡単に`compare_to`値を定義して、複数のジョブで再利用できます。  \n\n[ドキュメント](https://docs.gitlab.com/ee/ci/yaml/\\#ruleschangescompare\\_to)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/369916)\n\n### **グループAPIを使用して、グループの招待先のグループを一覧表示できるように**  \nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nグループAPIに、グループが招待された他のグループを一覧表示するエンドポイントが追加されました。この機能は、[グループが招待されたプロジェクトを一覧表示するエンドポイント](https://docs.gitlab.com/ee/api/groups.html\\#list-a-groups-shared-projects)を補完するもので、グループが追加されたすべてのグループとプロジェクトの概要を包括的に確認できるようになりました。このエンドポイントには、ユーザーあたり毎分60件のリクエストのレート制限が設定されています。\n\nこの場を借りて、コミュニティにコントリビュートしてくれた[@imskr](https://gitlab.com/imskr)さんに感謝します！  \n\n[ドキュメント](https://docs.gitlab.com/ee/api/groups.html\\#list-a-groups-shared-groups)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/424959)\n\n### **コマンドパレットを使用したプロジェクト設定の検索**\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLabでは、プロジェクト、グループ、インスタンス、そしてユーザー向けに多種多様な設定が用意されています。そのため、多くの場合、必要な設定を見つけるにはUIのさまざまなエリアをクリックする必要があり、時間がかかっていました。\n\n今回のリリースでは、コマンドパレットからプロジェクト設定を検索できるようになりました。プロジェクトを開き、「**検索または移動先...**」を選択し、「`>`」キーでコマンドモードに入り、設定セクション名（例：「**保護タグ**」）を入力してみてください。表示された結果をクリックすると、その設定に直接移動できます。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/search/command\\_palette.html)  \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/448637) \n\n\u003Cimg src=\"https://about.gitlab.com/images/17_2/project_settings_search.png\">\n\n### **一度に1つのディスカッションのTo-Doアイテムが完了できるように**\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLabのイシューでのディスカッションが活発になることがあります。GitLabは、ご自身に関連するコメントに対してTo-Doアイテムを表示することでやり取りを管理しやすくします。またイシューに対してアクションを起こすと、自動的にそのアイテムを完了します。\n\nこれまでは、イシュー内のスレッドでアクションを起こすと、複数の異なるスレッドで自分がメンションされていた場合であっても、すべてのTo-Doアイテムが完了として処理されていました。今回のリリースから、自分がアクションを起こしたスレッドのTo-Doアイテムのみが完了されるようになりました。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/todos.html)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/461111)  \n\n### **Wikiのサイドバーの改善**\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLab 17.2では、Wikiでのサイドバーの表示方法にいくつかの機能拡張が追加されました。今回の機能拡張により、Wikiのサイドバーにすべてのページ（最大5,000ページ）と目次（TOC）が表示されるようになり、さらにページを迅速に探せるよう検索バーが追加されました。\n\nこれまではサイドバーに目次が表示されていなかったため、ページのセクションへの移動が大変でした。新しい目次機能を使用すると、ページ構造がわかりやすくなるとともに、さまざまなセクションに迅速に移動できるため、使いやすさが大幅に向上します。\n\n検索バーが追加されることで、より簡単にコンテンツを見つけられるようになります。また、サイドバーにすべてのページが表示されるようになったため、Wiki全体をスムーズに閲覧できます。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/wiki/)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/281570)  \n\n### **CLI用GitLab Duoの一般提供を開始**\nSaaS: Ultimate、Duo Enterprise  \nSelf-Managed: Ultimate、Duo Enterprise\n\n全ユーザーを対象に、CLI用のGitLab Duoの一般提供が開始されました。今後は、ニーズに合った `git` コマンドを見つける手助けをGitLab Duoに`依頼`できます。\n\n`glab duo ask \u003Cgit question>` を使うと、GitLab Duoが目的達成のためにフォーマットされた `git` コマンドを提供します。次にGitLab CLIが、渡されるフラグの情報など、コマンドやその実行内容に関する追加情報を提供します。その後、コマンドを実行して、ワークフローで直接出力結果を得られます。\n\nGitLab CLIの `ask` コマンドは、覚えづらい `git` コマンドを利用してワークフローを高速化する上で最適な方法です。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/gitlab\\_duo/index.html\\#gitlab-duo-for-the-cli)   \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/10402)  \n\n\u003Ciframe width=\"868\" height=\"489\" src=\"https://www.youtube.com/embed/1DG_xN1tg1U\" title=\"GitLab Duo for the CLI is now GA\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### **ワークスペース向けの新しいエージェント認証方法**\nSaaS: Premium、Ultimate  \nSelf-Managed: Premium、Ultimate\n\nこのリリースでは、ワークスペース向けに新しい認証方法を導入しました。これにより、従来の認証方法における制限に対処し、グループのオーナーや管理者に対してより柔軟かつ詳細な管理の実現を可能にしました。新しい認証方法を使用すれば、グループのオーナーと管理者はワークスペースのホスティングに使用するクラスターエージェントを制御できます。\n\nスムーズに移行できるようにするために、ユーザーが従来の認証方法を利用している場合、自動的に新しい認証方法に変更されます。また、ワークスペースをサポートする既存のエージェントは、自動的にそのエージェントが存在するルートグループで許可されます。この移行は、エージェントがルートグループ内の異なるグループで許可されている場合でも行われます。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/workspace/gitlab\\_agent\\_configuration.html)   \n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/14025)  \n\n### **GitLab Runner 17.2** \nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\n本日、GitLab Runner 17.2がリリースされます！GitLab Runnerは、CI/CDジョブを実行し、その結果をGitLabインスタンスに送信する、軽量で拡張性の高いエージェントです。GitLab Runnerは、GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。  \n\n**新機能：**\n\n* [AWS EC2インスタンス用GitLab Runnerフリートプラグイン（一般公開）](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/29222)  \n* [Runnerの`livenessProbe`と`readinessProbe`設定の許可](https://gitlab.com/gitlab-org/charts/gitlab-runner/-/issues/545)  \n* [Kubernetes Executorの`umask 0000`コマンドの有効化と無効化機能](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/28867)  \n* [GitLab Runnerオペレータ向けRed Hat OpenShift 4.16のサポート](https://gitlab.com/gitlab-org/gl-openshift/gitlab-runner-operator/-/issues/203)\n\n**バグ修正：**\n\n* [Gitlab Runnerをアップグレードすると、すべてのキャッシュボリュームが削除される](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/30876)\n\nすべての変更の一覧は、GitLab Runnerの[変更履歴](https://gitlab.com/gitlab-org/gitlab-runner/blob/17-2-stable/CHANGELOG.md)で確認できます。  \n\n[ドキュメント](https://docs.gitlab.com/runner)  \n\n### **Terraformモジュールレジストリのドキュメントモジュール**\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nTerraformモジュールレジストリにReadmeファイルが表示されるようになりました！ご要望の多かったこの機能を使用すると、各モジュールの目的、構成、要件を透過的に文書化できます。  \nこれまでは、これらの重要な情報を他のソースから探す必要があったため、モジュールを適切に評価し使用することが困難でした。このリリースから、モジュールのドキュメントをすぐに確認できるようになり、モジュールの機能をすばやく理解できるようになりました。Readmeファイルを閲覧できるようになったことで、組織全体でTerraformコードを安心して共有し、再利用できます。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/packages/terraform\\_module\\_registry/index.html\\#view-terraform-modules)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/451054)  \n\n\u003Ciframe width=\"868\" height=\"489\" src=\"https://www.youtube.com/embed/SWRwW4pS7Gk\" title=\"Package speed-run: View Terraform module documentation\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### **APIファジングテストで署名付き認証リクエストをサポート**\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\nAPIファジングには、スキャナーから送信されたリクエストを変更できる「上書き」機能がすでにサポートされていますが、事前に上書きを設定する必要があり、リクエスト自体に応じて変更することはできません。GitLab 17.2では、「リクエストに基づくスクリプト」として `FUZZAPI_PER_REQUEST_SCRIPT` が追加され、各リクエストを送信する前に呼び出されるC\\#スクリプトをユーザーが提供できるようになりました。これにより、認証の一環としてシークレットを使用したリクエストへの「署名」をサポートします。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/application\\_security/api\\_fuzzing/configuration/variables.html)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/458825)  \n\n### **コンテナスキャン：継続的な脆弱性スキャンの対象OSの拡張**\nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\n17.2では、コンテナスキャンMVCの継続的な脆弱性スキャンを強化するために、APKとRPMオペレーティングシステムのパッケージバージョンのサポートを追加しました。\n\nこの機能強化により、[APK](https://gitlab.com/gitlab-org/gitlab/-/issues/428703)と[RPM](https://gitlab.com/gitlab-org/gitlab/-/issues/428941)オペレーティングシステムのPURLタイプのパッケージバージョンを比較することで、コンテナスキャンの継続的な脆弱性警告を完全にサポートできるようになりました。  \n\nなお、キャレット（`^`）が含まれるRPMバージョンはサポートされていません。キャレットを含むバージョンのサポートに関する作業は、[こちらのイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/459969)で追跡されています。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/application\\_security/continuous\\_vulnerability\\_scanning/\\#supported-package-types)\u003Cbr>\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/10174)  \n\n### **Go、Java、Pythonで高度なSAST（ベータ）が利用可能に** \nSaaS: Ultimate  \nSelf-Managed: Ultimate\n\n高度なSASTが[ベータ機能として](https://docs.gitlab.com/ee/policy/experiment-beta-support.html\\#beta)、Ultimateをお使いのお客様にご利用いただけるようになりました。高度なSASTは、ファイルや機能をまたがる分析により、より品の高い結果を提供します。現在、Go、Java、Pythonをサポートしています。 \n\nベータフェーズでは、既存のSASTアナライザーを置き換えずに、テストプロジェクトで高度なSASTを実行することをお勧めします。高度なSASTを有効にするには、こちらの[手順](https://docs.gitlab.com/ee/user/application\\_security/sast/gitlab\\_advanced\\_sast/\\#enabling-the-analyzer)を参照してください。GitLab 17.2から、高度なSASTは[`SAST.latest` CI/CDテンプレート](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Jobs/SAST.latest.gitlab-ci.yml)に含まれています。\n\nこれは、[Oxeyeテクノロジーの統合](https://about.gitlab.com/blog/oxeye-joins-gitlab-to-advance-application-security-capabilities/)プロセスの一環です。今後のリリースでは、高度なSASTを一般公開し、[他の言語](https://gitlab.com/groups/gitlab-org/-/epics/14312)をサポートし、脆弱性の流れを追跡できる新たなUI要素を導入する予定です。ぜひテストして、フィードバックを[イシュー466322](https://gitlab.com/gitlab-org/gitlab/-/issues/466322)にお寄せください。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/application\\_security/sast/gitlab\\_advanced\\_sast/)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/466322)  \n\n### **サブグループのコンプライアンスセンターでのフレームワークの割り当て** \nSaaS: Premium、Ultimate  \nSelf-Managed: Premium、Ultimate\n\nコンプライアンスセンターは、コンプライアンスチームがコンプライアンス基準の遵守状況や違反についての報告、グループのコンプライアンスフレームワークの管理などを一括して行える場所です。\n\nこれまではコンプライアンスセンターの関連機能はすべて、トップレベルグループでのみ利用できました。そのため、サブグループのオーナーは、トップレベルグループのコンプライアンスセンターで提供される機能を利用できませんでした。  \n\nこういった重要な課題を解決するために、サブグループへのコンプライアンスフレームワークの割り当てと割り当ての解除機能を追加しました。これにより、グループオーナーは、すでに利用可能なトップグループレベルのコンプライアンスセンターダッシュボードに加え、サブグループレベルでもコンプライアンス状況を可視化できるようになりました。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/compliance/compliance\\_center/compliance\\_projects\\_report.html)   \n[エピック](https://gitlab.com/gitlab-org/gitlab/-/issues/469004)  \n\n### **複数のアクセストークンの有効期限の特定**\nSaaS: \\-  \nSelf-Managed: Free、Premium、Ultimate\n\n管理者は、複数のアクセストークンの有効期限を特定するスクリプトを実行できるようになりました。このスクリプトを[トークンのトラブルシューティングページ](https://docs.gitlab.com/ee/security/token\\_overview.html\\#troubleshooting)に記載されている他のスクリプトと組み合わせて使用することができます。トークンのローテーション準備がまだ整っていない場合、有効期限が間近に迫っているトークンを特定して、期限を延長できます。  \n\n[ドキュメント](https://docs.gitlab.com/ee/security/token\\_overview.html\\#identify-dates-when-many-tokens-expire)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/467313)  \n\n### **Google Cloudインテグレーションの設定プロセスの簡素化**\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: \\-\n\nGoogle Cloud IAMインテグレーションのワークロードアイデンティティフェデレーションを設定する際に、Google Cloud CLIコマンドをネイティブで利用できるようになりました。これまではガイド付き設定で、cURLコマンドでダウンロードしたスクリプトを使用していました。また、設定プロセスをよりわかりやすく説明するヘルプテキストが追加されました。これらの改善により、グループオーナーはGoogle Cloud IAMインテグレーションの設定をより迅速に行えるようになりました。  \n\n[ドキュメント](https://docs.gitlab.com/ee/tutorials/set\\_up\\_gitlab\\_google\\_integration/\\#secure-your-usage-with-google-cloud-identity-and-access-management-iam)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/454343)  \n\n### **SnowflakeデータコネクターへのユーザーAPIの追加**\nSaaS: \\-  \nSelf-Managed: Free、Premium、Ultimate\n\nGitLab 17.2では、[GitLabデータコネクター](https://app.snowflake.com/marketplace/listing/GZTYZXESENG/gitlab-gitlab-data-connector)で[ユーザーAPI](https://docs.gitlab.com/ee/api/users.html\\#list-users)が新たにサポートされました。このAPIは、Snowflake Marketplaceアプリで利用できます。ユーザーAPIを使用して、Self-ManagedのGitLab インスタンスからSnowflakeにユーザーデータをストリーミングできるようになりました。  \n\n[ドキュメント](https://docs.gitlab.com/ee/integration/snowflake.html)   \n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13004)  \n\n### **グループの概要のソートとフィルタリングの改善**\nSaaS: Free、Premium、Ultimate  \nSelf-Managed: Free、Premium、Ultimate\n\nグループの概要ページのソートとフィルタリング機能を更新しました。検索要素がページ全体に広がり、検索文字列が見やすくなりました。また、`名前`、`作成日`、`更新日`、`お気に入り`といった標準化されたソートオプションを使用できるようになりました。  \n\nこの変更についてのフィードバックは[イシュー438322](https://gitlab.com/gitlab-org/gitlab/-/issues/438322)で投稿できます。  \n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/\\#view-a-group)   \n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/437013)  \n\n## **バグ修正、パフォーマンスの改善、UIの改善**\n\nGitLabでは、ユーザーに可能な限り最高の環境をお届けすることに専心しています。リリースのたびに、バグを修正し、パフォーマンスを改善し、UIを向上させるためにたゆまぬ努力を続けています。GitLabは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームを利用するすべての人にスムーズでシームレスな体験を届けることを約束します。  \n\n以下のリンクをクリックして、17.2のバグ修正、パフォーマンス向上、UI改善についてすべてご覧ください。\n\n* [バグ修正](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated\\_desc\\&state=closed\\&label\\_name%5B%5D=type%3A%3Abug\\&or%5Blabel\\_name%5D%5B%5D=workflow%3A%3Acomplete\\&or%5Blabel\\_name%5D%5B%5D=workflow%3A%3Averification\\&or%5Blabel\\_name%5D%5B%5D=workflow%3A%3Aproduction\\&milestone\\_title=17.2)  \n* [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated\\_desc\\&state=closed\\&label\\_name%5B%5D=bug%3A%3Aperformance\\&or%5Blabel\\_name%5D%5B%5D=workflow%3A%3Acomplete\\&or%5Blabel\\_name%5D%5B%5D=workflow%3A%3Averification\\&or%5Blabel\\_name%5D%5B%5D=workflow%3A%3Aproduction\\&milestone\\_title=17.2)  \n* [UIの改善](https://papercuts.gitlab.com/?milestone=17.2)\n\n## **非推奨事項**\n\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更RSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n## **削除された機能と破壊的な変更**\n\n削除されたすべての機能の一覧は、[GitLabドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受け取るには、[破壊的な変更RSSフィードにサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n### **GitLab 17.2 へのアップグレードに関する重要な注意事項**\n\nGitLab 17.2から、Geoインストールは `gitlab-ctl set-geo-primary-node` コマンドを使ってプライマリサイトを定義した時にプライマリサイトのチェックサムプロセスを開始します。これまでは、セカンダリサイトが設定された後にチェックサム処理が開始されていました。つまり、`gitlab-ctl set-geo-primary-node` コマンドの実行後にプライマリサイトがデータのチェックサムを生成し始めるので、Geoのセットアップの少し早い段階でプライマリサイトのリソース使用量が増えることになります。\n\n### **変更履歴**\n\n変更内容をすべて表示するには、以下のページから変更履歴を確認してください。\n\n* [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)   \n* [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)   \n* [VS CodeのGitLabワークフロー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)   \n* [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n### インストール\nGitLabを新規にインストールする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/install/)をご覧ください。\n\n### 更新\n[更新ページ](https://about.gitlab.com/update/)を確認してください。\n\n### ご不明な点がある場合\nご質問やご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスし質問を投稿してください。\u003Cbr>\u003Cbr>\n\n*監修：小松原 つかさ [@tkomatsubara](https://gitlab.com/tkomatsubara)\u003Cbr>\n（GitLab合同会社 ソリューションアーキテクト本部 シニアパートナーソリューションアーキテクト）*\n\n### 過去の日本語リリース情報\n\n- [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n- [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n- [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n- [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)  \n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)  \n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)  \n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)  \n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)  \n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)\n",[672,671,14],"2024-08-30",{"slug":1312,"featured":92,"template":679},"gitlab-17-2-released","content:ja-jp:blog:gitlab-17-2-released.yml","Gitlab 17 2 Released","ja-jp/blog/gitlab-17-2-released.yml","ja-jp/blog/gitlab-17-2-released",{"_path":1318,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1319,"content":1325,"config":1330,"_id":1332,"_type":16,"title":1333,"_source":18,"_file":1334,"_stem":1335,"_extension":21},"/ja-jp/blog/gitlab-16-11-released",{"title":1320,"description":1321,"ogTitle":1320,"ogDescription":1321,"noIndex":6,"ogImage":1322,"ogUrl":1323,"ogSiteName":770,"ogType":771,"canonicalUrls":1323,"schema":1324},"GitLab 16.11リリース","GitLab 16.11でリリースした最新機能をご紹介します。","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749662118/Blog/Hero%20Images/16_11-cover-image.png","https://about.gitlab.com/blog/gitlab-16-11-released","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"GitLab 16.11リリース\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Japan Team\"}],\n        \"datePublished\": \"2024-06-20\",\n      }",{"title":1320,"description":1321,"authors":1326,"heroImage":1322,"date":1327,"body":1328,"category":14,"updatedDate":1329},[676],"2024-06-20","__「GitLab Duo Chat」をGitLab 16.11に統合して一般提供開始__\n\n本日、一般提供された[GitLab Duoチャット](https://about.gitlab.com/releases/2024/04/18/gitlab-16-11-released/#gitlab-duo-chat-now-generally-available)および[プロダクト分析やセキュリティポリシーのスコーピング](https://about.gitlab.com/releases/2024/04/18/gitlab-16-11-released/#understand-your-users-better-with-product-analytics)、その他多くの機能が含まれるGitLab 16.11のリリースを発表します。\n\nこれらの機能は、このリリースで追加された40を超える新機能のほんの一部です。お役に立つアップデートをすべてご紹介していますので、ぜひ最後までお読みください。\n\nGitLabコミュニティメンバーのみなさま、GitLab 16.11に190件以上のコントリビュートをしてただきありがとうございました！GitLabでは[誰でもコントリビュートできます](https://about.gitlab.com/community/contribute/)。みなさまのご協力なしでは実現できませんでした。\n\n来月のリリースで予定されている内容をプレビューするには、17.0リリースのキックオフビデオもご覧いただける[今後のリリースページ](https://about.gitlab.com/direction/kickoff/)をご覧ください。\n\n## 今月のMost Valuable Person（[MVP](https://about.gitlab.com/community/mvp/)）を[Ivan Shtyrliaiev](https://gitlab.com/bahek2462774)さんと[Baptiste Lalanne](https://gitlab.com/BaptisteLalanne)さんに共同で授与\n\n[Ivan Shtyrliaiev](https://gitlab.com/bahek2462774)さんは、2024年にGitLabに[6件コントリビュート](https://gitlab.com/groups/gitlab-org/-/merge_requests?scope=all&state=merged&author_username=bahek2462774)しました。Ivanさんは、GitLabのプリンシパルプロダクトマネージャー、[Hannah Sutor](https://gitlab.com/hsutor)によって推薦され、[ユーザーリストの検索とフィルタリング体験の向上に大きく貢献しました](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/144907)。\n\n「これはユーザーエクスペリエンスの大幅な改善です。横方向にスクロール可能なリストから、2つのタブと検索ボックスのみのすっきりとしたUXに移行できました」とHannahは述べています。「ユーザーはタブを横方向にスクロールせずに、検索ボックスを使って絞り込みが可能になりました！」\n\nIvanさんは、この難しいリクエストを担当し、GitLab UXチームと協力して提案をブラッシュアップし、レビューにすばやく対応したことが評価されました。GitLabのエンジニアリングマネージャーの[Adil Farrukh](https://gitlab.com/adil.farrukh)も、この機能は重要で、Ivanさんがフィードバックに迅速に対応してくださったと述べており、推薦を支援しています。GitLabのフロントエンドエンジニアの[Eduardo Sanz García](https://gitlab.com/eduardosanz)もまた、Ivanさんの推薦を支援しており、彼の適応能力についてコメントしています。\n\n「Eduardoさんのレビューに加え、GitLabチームがコントリビュートを実現するために尽力してくれたことに心から感謝しています」とIvanさんは述べています。「とても助かりましたし、実際にかかる時間が実感できました」\n\nIvanさんは、[Politico社](https://www.politico.com/)のフロントエンドソフトウェアエンジニアです。\n\n[Baptiste Lalanne](https://gitlab.com/BaptisteLalanne)さんは、3年前に作成され、70件近くの同意が寄せられていたイシューを担当し、CI/CD設定に `retry:exit codes` を追加する[非常にリクエストの多かった機能](https://gitlab.com/gitlab-org/gitlab/-/issues/262674)にコントリビュートしました。このコントリビュートにより、失敗したパイプラインジョブやexitコードが異なるジョブをユーザーがより柔軟に管理できるようになりました。\n\nBaptisteさんは、GitLabのプロダクトマネージャーの[Dov Hershkovitch](https://gitlab.com/dhershkovitch)が推薦しました。「このプロジェクトに対するBaptisteさんの勤勉な取り組みは、単なる実装とはかけ離れていました」とDovは述べています。「今回の成果は、GitLabコミュニティにおける共同作業の強みの代表的な例です。Baptisteさんの努力により、GitLabにおいて重要なニーズを満たすだけでなく、オープン性と透明性に対する取り組みに加え、オープンコアの精神を強化できました」\n\n「今回の受賞は心温まることであり、大変感謝しています」とBaptisteさんは述べています。「とても楽しいので、これからも空いている時間にコントリビュートしていきたいです」\n\n過去1年間で、Baptisteさんは6つのマージリクエストをGitLabにマージしました。次は、[GitLab Runnerにコントリビュートすること](https://docs.gitlab.com/runner/development/)を楽しみにしているそうです。Baptisteさんは、[DataDog社](https://www.datadoghq.com/)のソフトウェアエンジニアです。\n\n新たなMVPであるIvanさんとBaptisteさん、そしてその他のGitLabコミュニティのコントリビューターのみなさまに心から感謝申し上げます！🙌\n\n## GitLab 16.11でリリースされた主な改善点\n\n### GitLab Duoチャットを一般提供\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\nGitLab Duoチャットが[一般提供](https://docs.gitlab.com/ee/policy/experiment-beta-support.html#generally-available-ga)されました。また、本リリースでは、以下の機能も一般公開します。\n- コードの提案機能で、開発者やあまり技術の知識を持たないユーザーがなじみのないコードをより早く理解できます\n\n- コードリファクタリング機能で、開発者が既存のコードを簡素化して改善できます\n- テスト生成機能で、反復的なタスクを自動化し、チームがバグを早期に発見できます\n\nユーザーは、GitLab UI、Web IDE、VS Code、またはJetBrains IDEからGitLab Duoチャットにアクセスできます。\u003Cbr>\n\n本リリースのGitLab Duoチャットの詳細については、こちらの[ブログ記事（英語）](https://about.gitlab.com/blog/gitlab-duo-chat-now-generally-available/)をご覧ください。\u003Cbr>\n現在、チャットはUltimateとPremiumのユーザーが利用できます。インスタンス管理者、グループオーナー、およびプロジェクトオーナーは、[Duo機能によるデータのアクセスおよび処理の制限設定](https://docs.gitlab.com/ee/user/ai_features.html#disable-gitlab-duo-features-for-specific-groups-or-projects-or-an-entire-instance)ができます。\n\nGitLab Duoチャットは、[GitLab Duo Pro](https://about.gitlab.com/gitlab-duo/#pricing)の一部です。GitLab Duo Proをまだ購入されていないユーザーのチャットのベータ版の移行を容易にするために、PremiumおよびUltimateをご利用のお客様を対象に、引き続きDuoチャットを（アドオンなしで）短期間提供します。Duo Proをサブスクライブされている方のみにアクセスが制限される時期については、後日お知らせします。\n\nチャット内のフィードバックボタンをクリックするか、イシューを作成してGitLab Duoチャットにメンションして、ぜひご意見をお聞かせください。みなさまからのフィードバックをお待ちしています！\u003Cbr>\n\n[ドキュメント](https://gitlab.com/groups/gitlab-org/-/epics/13516)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13516)\u003Cbr>\n\n\u003Ciframe width=\"1046\" height=\"588\" src=\"https://www.youtube.com/embed/ZQBAuf-CTAY\" title=\"GitLab Duo Chat\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### JetBrains IDEでGitLab Duoチャットが利用可能に\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nJetBrains IDEでGitLab Duoチャットをご利用いただけるようになりました。\u003Cbr>\n\nGitLabのAI機能の一環であるDuoチャットは、対応しているJetBrains IDEにインタラクティブなチャットウィンドウに加え、コードの説明、テストの記述、および既存のコードのリファクタリングの機能を直接提供することで、開発者は効率的に作業ができます。\u003Cbr>\n\n機能の完全なリストについては、[Duoチャットのドキュメント](https://docs.gitlab.com/ee/user/gitlab_duo_chat.html)をご覧ください。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/editor_extensions/jetbrains_ide/index.html)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/editor-extensions/gitlab-jetbrains-plugin/-/issues/307)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/16_11/create-duo-chat-in-jetbrains.png\">\n\n### セキュリティポリシーのスコープ\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nポリシーのスコープにより、きめ細かい管理とポリシーの適用を実現します。この新機能を使用すると、セキュリティチームおよびコンプライアンスチームは、マージリクエストの承認（スキャン結果）ポリシーとスキャン実行ポリシーの両方において、ポリシーの実施範囲をコンプライアンスフレームワークまたはグループに含まれるまたは除外されるプロジェクトに設定できます。\u003Cbr>\n\n現在、セキュリティポリシープロジェクトで管理されているすべてのポリシーは、リンクされているすべてのグループ、サブグループ、およびプロジェクトに対して実施されていますが、ポリシーのスコープを使用すれば、ポリシー単位で実施ポリシーを設定できるようになります。これにより、セキュリティチームとコンプライアンスチームは以下を行えるようになります。\n\n- ポリシーをより細かく実施しながら、組織全体でポリシーを一元管理しやすくなります\n\n- GitLabで実装および実施されているコントロールが、定義したコンプライアンスフレームワークにどのように組み込まれているかをより深く把握できます\n- コンプライアンスセンターから、コンプライアンスフレームワークにリンクされているポリシーを閲覧および管理できます\n- セキュリティとコンプライアンスの体制をよりよく整理し、把握できます\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/scan-execution-policies.html#security-policy-scopes)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/5510)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/16_11/policy-scoping-release-post-image-optimized.png\">\n\n### プロダクト分析を使用してユーザーについて理解を深める\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\n今後のイノベーションと最適化についてデータに基づいた意思決定を行うためには、ユーザーがアプリケーションにどのように関わっているかを理解することが不可欠です。ビジネスに不可欠なクリティカルURLの使用量が増加しているか、毎月のアクティブユーザー数が異常なほど減少しているか、またはAndroidのモバイルデバイスを使用するお客様によるエンゲージメントが増えているか、といった質問への回答を得て、GitLabプラットフォームからエンジニアリングチームがアクセスできるようにすることで、チームは開発作業がユーザーの成果にどのように影響しているかを常に把握できるようになります。\n\nGitLabの新しいプロダクト分析機能を使用すると、アプリケーションを計測し、ユーザーの主要な使用状況と導入データを収集して、GitLab内に表示できます。データをダッシュボード上に表示したり、レポートを作成したりできるほか、さまざまな方法でフィルタリングして、ユーザーに関するインサイトを見つけられます。これにより、最近のリリースの成功を祝うだけでなく、問題があることを意味する顧客使用率の予期せぬ低下や急増を迅速に特定して対応できるようになりました。\n\nプロダクト分析を使用するには、こちらの[Helm Chart](https://gitlab.com/gitlab-org/analytics-section/product-analytics/helm-charts)をインストールし、アプリケーションを計測してトラフィックを送信するために、Kubernetesクラスターが必要となります。その後、GitLabはクラスターに接続し、視覚化のためにデータを取得します。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/product_analytics/)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/12716)\u003Cbr>\n\n\u003Ciframe width=\"478\" height=\"269\" src=\"https://www.youtube.com/embed/i8Mze9lRZiY\" title=\"Product Analytics release video\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### エンタープライズユーザーのパーソナルアクセストークンを無効にする\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: -\u003Cbr>\n\nGitLab.comのグループオーナーは、グループ内のエンタープライズユーザーがパーソナルアクセストークンを作成・使用することを無効にできるようになりました。パーソナルアクセストークンは強力な権限が付与させることがあるため、セキュリティ上の理由により、これらのトークンを無効化したいオーナーもいるでしょう。\u003Cbr>\nこのきめ細かい制御により、GitLab.comでセキュリティとアクセシビリティのバランスを取るための選択肢が提供されます。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#disable-personal-access-tokens-for-enterprise-users)\u003Cbr>\n[イシュー\n](https://gitlab.com/gitlab-org/gitlab/-/issues/369504)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/16_11/govern-disable-pats.jpg\">\n\n### Wikiページへのリンクのオートコンプリートサポート\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nGitLab 16.11でWikiページへのリンクのオートコンプリートサポートが導入されます！この新機能により、エピックやイシューからWikiページにリンクすることがかつてないほど簡単になりました。キーを数回クリックするだけでリンクできます。\u003Cbr>\n\nもうWikiページのURLをコピーして、エピックやイシューのコメントに貼り付ける必要はありません。今後は、Wikiページのあるグループやプロジェクトに移動し、エピックやイシューにアクセスし、オートコンプリートのショートカットを使用して、エピックやイシューからWikiページにシームレスにリンクするだけです！\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/markdown.html#gitlab-specific-references)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/442229)\u003Cbr>\n\n\u003Ciframe width=\"478\" height=\"269\" src=\"https://www.youtube.com/embed/qqN6KxMB06E\" title=\"Knowledge Group: Introducing Autocomplete Support for Wiki Pages\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen>\u003C/iframe>\n\n### プロジェクト概要ページに表示されるメタデータ用のサイドバー\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nプロジェクト概要ページのデザインを一新しました。これにより、すべてのプロジェクト情報とリンクが複数のエリアに表示されるのではなく、1つのサイドバーで確認できるようになりました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/working_with_projects.html)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/429186/)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/431537)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/16_11/project-overview-sidebar.png\">\n\n### Switchboardを用いて行った変更に関するメール通知\nSaaS: -\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nテナント管理者がSwitchboardを使用してGitLab Dedicatedインスタンスの設定を変更すると、完了時にメール通知が生成されるようになりました。\u003Cbr>\n\nSwitchboardでテナントを表示または編集するアクセス権を持つすべてのユーザーに、変更が行われるたびに通知が送信されます。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/dedicated/configure_instance.html#manage-notification-preferences)\u003Cbr>\n[イシュー](https://about.gitlab.com/direction/saas-platforms/switchboard/#fy25-q1)\n\n### ジョブの失敗時に直ちにパイプラインをキャンセルするオプション\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nジョブが失敗したことに気づいた場合、失敗の原因である問題に対処する間、リソースを節約するために手動で残りのパイプラインをキャンセルすることがあります。GitLab 16.11では、ジョブが失敗した際に自動的にパイプラインがキャンセルされるように設定できるようになりました。特に並行して多数のジョブが長時間実行される、実行に長時間かかる大規模なパイプラインでは、リソースの使用量とコストを削減する効果的な方法として利用できます。\u003Cbr>\n\n[ダウンストリームのパイプラインが失敗した場合に直ちにパイプラインがキャンセルされる](https://docs.gitlab.com/ee/ci/pipelines/downstream_pipelines.html#auto-cancel-the-parent-pipeline-from-a-downstream-pipeline)ように設定することも可能です。この場合、親パイプラインと他のすべてのダウンストリームのパイプラインがキャンセルされます。\u003Cbr>\n\nこの場を借りて、この機能にコントリビュートしてくれた[Marco](https://gitlab.com/zillemarco)さんに心から感謝します！\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/yaml/#workflowauto_cancelon_job_failure)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/23605)\u003Cbr>\n\u003Cimg src=\"https://about.gitlab.com/images/16_11/16.11_auto_cancel_on_job_failure.png\">\u003Cbr>\n\n## GitLab 16.11におけるその他の改善点\n\n### インポートジョブの上限を設定可能に\n\nSaaS: -\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nこれまでインポートジョブの最大数は以下のとおりでした。\u003Cbr>\n\n- GitHubインポーターは1,000件でした。\n- Bitbucket CloudとBitbucket Serverのインポーターは100件でした。\n\n上記の制限はハードコーディングされており、変更できませんでした。これらの制限により、キューに追加されるのと同じタイミングでインポートジョブを処理するには処理速度が不十分であった可能性があり、結果としてインポート速度が低下していたかもしれません。\u003Cbr>\n\n今回のリリースでは、ハードコーディングされていた制限をアプリケーション設定に移行しました。GitLab.com版では上限を上げていませんが、Self-Managed版のGitLabインスタンスの管理者は、ニーズに応じてインポートジョブの数を設定できるようになりました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/settings/import_and_export_settings.html#maximum-number-of-simultaneous-import-jobs)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/439286)\n\n### Slackアプリ用GitLabがグループとインスタンスで設定可能に\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nこれまでSlackアプリ用GitLabは、一度に1つのプロジェクトに対してしか設定できませんでした。本リリースでは、グループまたはインスタンス向けのインテグレーションを設定し、複数のプロジェクトに一度に変更を加えられるようになりました。\u003Cbr>\n\nこの改善により、Slackアプリ用GitLabの機能は、非推奨の[Slack通知インテグレーション](https://docs.gitlab.com/ee/user/project/integrations/slack.html)と同等のレベルに近づきました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/integrations/gitlab_slack_application.html#from-the-project-or-group-settings)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/391526)\n\n### GitLab Pagesのサイドバー上での可視性が向上\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n以前のリリースでは、GitLab Pages サイトがあるプロジェクトでサイトURLを見つけるのは大変でした。\nGitLab 16.11からは、右側のサイドバーにサイトへのショートカットリンクが表示され、ドキュメントを確認しなくてもURLを見つけられるようになりました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/pages/)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/18027)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/16_11/gitlab_pages_sidebar.png\">\n\n### 色を用いてエピックを視覚的に区別\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\n組織全体でポートフォリオ管理機能をさらに充実して利用できるように、[ロードマップ](https://docs.gitlab.com/ee/user/group/roadmap/)と[エピックボード](https://docs.gitlab.com/ee/user/group/epics/epic_boards.html)でエピックを色で区別できるようになりました。\u003Cbr>\n\n軽量で用途の広いこの機能を使用すれば、グループの所有権、ライフサイクルステージ、開発の成熟度、その他の様々なカテゴリをすばやく区別できます。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/epics/manage_epics.html#epic-color)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/9033)\n\n### GitLabからのGoogle Compute Engine Runnerの作成を自動化 - パブリックベータ版\nSaaS: -\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nこれまでGoogle Compute EngineでGitLab Runnerを作成する際は、GitLabとGoogle Cloudの間で複数回コンテキストを切り替える必要がありました。\u003Cbr>\n\nGitLab RunnerインフラストラクチャのツールキットのterraformテンプレートとGitLabを使用することで、複数のシステム間を移動しなくても、Google Compute EngineでGitLab Runnerを簡単にプロビジョニングして、GitLab Runnerをデプロイし、Google Cloudインフラストラクチャをプロビジョニングできるようになりました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/runners/provision_runners_google_cloud.html#creating-a-runner-provisioned-in-google-cloud)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/13494)\n\n### ArtifactoryとAWSを含む、Hashicorp Vaultのシークレットのサポートを拡張\n\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\nHashiCorp VaultとGitLabのインテグレーションが拡張され、多様なタイプのシークレットに対応できます。GitLab Runner 16.11で導入された'汎用'タイプのシークレットエンジンを選択できるようになりました。この汎用エンジンは、HashiCorp Vaultの[Artifactory Secretsプラグイン](https://jfrog.com/help/r/jfrog-integrations-documentation/hashicorp-vault-artifactory-secrets-plugin)および[AWSシークレットエンジン](https://developer.hashicorp.com/vault/docs/secrets/aws)をサポートしています。このオプションを使用して、必要なシークレットを安全に取得し、GitLab CI/CDパイプラインで使用しましょう！\u003Cbr>\n\nこの素晴らしいコントリビュートをしてくれた[Ivo Ivanov](https://gitlab.com/urbanwax)さんに心から感謝します！\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/secrets/#vault-secrets-engines)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/366492)\n\n### 特定のexitコードにより、失敗したCIジョブの自動リトライを改善\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nこれまでは `retry:max` に加え、`retry:when` を使用して、スクリプトの失敗時など、特定の失敗が発生した際に、ジョブを何回リトライするかを設定できました。\u003Cbr>\n\n本リリースでは、`retry:exit_codes` を利用して、特定のスクリプトの終了に基づき、失敗したジョブの自動リトライを設定できるようになりました。`retry:exit_codes` とともに `retry:when` および `retry:max` を用いて、特定のニーズに応じてパイプラインの動作を微調整し、パイプラインの実行を改善できます。\u003Cbr>\n\nこの場を借りて、コミュニティへの貢献をしてくれた[Baptiste Lalanne](https://gitlab.com/BaptisteLalanne)さんに感謝します！\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/yaml/#retry)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/262674)\n\n### Google Artifact RegistryをGitLabプロジェクトに接続\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: -\u003Cbr>\n\nソースコードおよびパイプラインと一緒にDockerイメージとOCIイメージを表示、プッシュ、プルするには、GitLabコンテナレジストリを使用します。この方法はGitLabを使用する多くのお客様にとって、'テスト'および'ビルド'フェーズでのコンテナイメージに最適です。しかし、組織がGoogleなどのクラウドプロバイダーに本番環境のイメージを公開するのは一般的なことです。\u003Cbr>\n\nこれまでGitLabからGoogle Artifact Registryにイメージをプッシュするには、Artifact Registryへに接続して、デプロイ用のカスタムスクリプトを作成し、保守する必要がありました。この方法はエラーが起きやすく、非効率でした。また、簡単にコンテナイメージ全体像を把握する方法もありませんでした。\u003Cbr>\n\nGoogle Artifact管理の新機能を活用して、GitLabプロジェクトをArtifact Registryリポジトリに簡単に接続できるようになりました。接続後、GitLab CI/CDパイプラインを使用して、Artifact Registryにイメージを公開できます。また、GitLabで\u003Cb>デプロイ > Google Artifact Registry\u003C/b>の順に移動すれば、Artifact Registryに公開されたイメージを閲覧できます。イメージの詳細を表示したい場合は、イメージを選択するだけです。\u003Cbr>\n\nこの機能はベータ版であり、現在GitLab.com版でのみ利用できます。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/integrations/google_artifact_management.html)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/12365)\n\n### GitLab Duoでプロダクト分析データを確認\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\n[プロダクト分析機能が一般](https://about.gitlab.com/releases/2024/04/18/gitlab-16-11-released/#understand-your-users-better-with-product-analytics)提供されました。本リリースには[カスタム可視化デザイナー](https://docs.gitlab.com/ee/user/analytics/analytics_dashboards.html#visualization-designer)があります。カスタム可視化デザイナーを使用して、アプリケーションイベントデータの確認やダッシュボードの構築を行うことができ、顧客の使用状況と導入パターンを理解しやすくなります。\u003Cbr>\n\n可視化デザイナーでは、テキスト形式でリクエストを入力して、GitLab Duoにグラフや表の作成を依頼できます。たとえば、「2024年の月間アクティブユーザー数を表示してください」や「今週の上位URLをリストアップしてください」というように依頼します。\u003Cbr>\n\nプロダクト分析のGitLab Duoは、[実験的な](https://docs.gitlab.com/ee/policy/experiment-beta-support.html#experiment)機能として提供されています。\u003Cbr>\n\n本機能をさらに改善できるよう、こちらの[フィードバック用のイシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/455363)から、カスタム可視化デザイナーでGitLab Duoを使用した体験に関するフィードバックをお寄せください。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/product_analytics/)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/12245)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/16_11/PA_customviz_duo.png\">\n\n### Dependency ScanningでのYarn v4のサポート\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nDependency ScanningがYarn v4に対応しました。この機能強化により、アナライザーでYarn v4のロックファイルを解析できるようになりました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/dependency_scanning/index.html#supported-languages-and-package-managers)\u003Cbr>\n[エピック](https://gitlab.com/gitlab-org/gitlab/-/issues/431752)\n\n## ワークロードIDティフェデレーションによりGoogle Cloudを認証\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: -\u003Cbr>\n\nワークロードIDフェデレーションを使用すると、サービスアカウントキーを使用せずにGitLabとGoogle Cloud間でワークロードを安全に接続できます。キーは長期的に使用される認証情報であることから、攻撃の経路となる可能性があるため、これによりセキュリティが改善されました。また、キーを使用する場合、作成、保護、および交換のための管理負荷も発生します。\u003Cbr>\n\nワークロードIDフェデレーションを使用すると、GitLabとGoogle Cloud間でIAMロールをマッピングできます。\u003Cbr>\n\nこの機能はベータ版であり、現在GitLab.com版でのみ利用できます。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/integration/google_cloud_iam.html)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/12758)\n\n### ポリシーボットのコメントを拡張して違反データを追加\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nセキュリティポリシーボットは、プロジェクトでポリシーがいつ実施されたか、いつ評価が完了したか、またMRをブロックする違反がある場合に、解決方法を提供するガイダンスも提示します。この度、ポリシーによってMRがブロックされる理由に関するさらなるインサイトに加え、解決方法についてのよりきめ細かいフィードバックが提供されるように、ボットコメントのサポートを拡張しました。コメントには以下の詳細情報が含まれます。\u003Cbr>\n\n- MRを明確にブロックしているセキュリティの調査結果\n- ポリシーに違反しているライセンス\n- デフォルトで「フェールクローズ」または動作をブロックする可能性のあるポリシーエラー\n- セキュリティの調査結果の評価で考慮されているパイプラインの詳細\n\nこういった詳細情報が提供されることで、MRのステータスをより迅速に把握し、どのような問題であっても自分でトラブルシューティングできるようになりました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/scan-result-policies.html)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/433403)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/16_11/bot-comment-policy-violations.png\">\n\n### ユーザー名の選択肢がさらに豊富に\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nユーザー名には、アクセントなしの文字、数字、アンダースコア（`_`）、ハイフン（`-`）、ピリオド（`.`）のみを使用できます。ユーザー名をハイフン（`-`）で始めたり、ピリオド（`.`）や `.git`、`.atom` で終わらせることはできません。\u003Cbr>\n\nユーザー名の検証時に、この基準がより正確に表示されるようになりました。このように検証機能が改良されたことで、ユーザー名を決める際の選択肢がより明確になりました。\u003Cbr>\n\nこの場を借りて、コントリビュートしてくれた[Justin Zeng](https://www.linkedin.com/in/jzeng88/)さんに感謝します！\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/#change-your-username)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/429283)\n\n### ユーザーリストの検索とフィルタリングの改善\nSaaS: -\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n管理者エリアのユーザーページを改善しました。\u003Cbr>\n\nこれまで、ユーザーリストの上部にタブが水平に配置されていたため、目的のフィルターまで移動するのに苦労していました。\u003Cbr>\n\nこの度、フィルターが検索ボックスに統合され、ユーザーの検索とフィルタリングを非常に簡単に行えるようになりました。\u003Cbr>\n\nこの場を借りて、コントリビュートしてくれた[Ivan Shtyrliaiev](https://www.linkedin.com/in/bahek2462774/)さんに感謝します！\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/administration/admin_area.html#administering-users)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/238183)\n\n### Omnibusの改善\nSaaS: -\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nGitLab 17.0では、PostgreSQLの最小サポートバージョンが14になる予定です。\u003Cbr>\n\nこの変更に備え、GitLab 16.11では'attempt_auto_pg_upgrade?'の設定を'true'に変更しました。この設定により、PostgreSQLのバージョン14に自動的にアップグレードしようと試行します。\nこのプロセスは、前回PostgreSQLの最小サポートバージョンを更新した際のプロセスと同じものです。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/omnibus/)\n\n### カスタムWebhookヘッダー\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n以前まで、GitLab Webhookはカスタムヘッダーに対応していませんでした。そのため、当時のWbhookは、特定の名前を持つヘッダーの認証トークンを承認するシステムと併用できませんでした。\u003Cbr>\n\nこのリリースにより、Webhookを作成または編集する際に最大20個のカスタムヘッダーを追加できるようになりました。これらのカスタムヘッダーは、外部サービスの認証用に使用できます。\u003Cbr>\n\nこの機能とGitLab 16.10で導入された[カスタムWebhookテンプレート](https://docs.gitlab.com/ee/user/project/integrations/webhooks.html#custom-webhook-template)を使用することで、カスタムWebhookを自由に作成できます。設定を行うことで、Webhookを通じて次のことを行えます。\n- カスタムペイロードを投稿する。\n- 必要に応じて認証ヘッダーを追加する。\nシークレットトークンやURLパラメータと同様に、カスタムヘッダーはターゲットURLが変更されるとリセットされます。\u003Cbr>\n\nこの場を借りて、[コミュニティへの貢献](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/146702)をしてくれた[Niklas](https://gitlab.com/Taucher2003)に感謝します！\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/integrations/webhooks.html#custom-headers)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/17290)\n\n### REST APIによるプロジェクトテスト用フック\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n以前まで、プロジェクトフックのテストは、GitLab UIでのみ行うことができました。このリリースにより、REST APIを使用して、指定されたプロジェクトのテストフックをトリガーできるようになりました。\u003Cbr>\n\nこの場を借りて、[コミュニティへの貢献](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/147656)をしてくれた[Phawin](https://gitlab.com/lifez)に感謝します！\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/api/projects.html#trigger-a-test-project-hook)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/25329)\n\n### バリューストリームイベントの累積計算が可能に\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\n新たなメソッドの導入により、ラベルイベント間の実行時間をより効果的に計算できるようになりました。この変更は、イベントが複数回発生するシナリオに対応するものです。たとえば、マージリクエストでラベルが開発段階とレビュー状態の間を行ったり来たりして変更される場合などです。以前、実行時間は最初と最後のラベルイベント間の時間を合計することで算出されていました。\u003Cbr>\n\n現在、実行時間は累積時間として算出されるようになり、イシューまたはマージリクエストに特定のラベルが割り当てられている場合の実行時間のみを正確に表しています。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/value_stream_analytics/#cumulative-label-event-duration)\u003Cbr>\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/12088)\n\n### グループコメントテンプレート\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nイシュー、エピック、またはマージリクエストにおいて、組織全体でテンプレート化された返答文があると便利です。こうしたテンプレートには、標準的な質問、よくある問題の解決策、またはマージリクエストのレビューコメント用のフォーマットなどが含まれます。\u003Cbr>\n\nグループコメントテンプレートでは、GitLab全体のコメントボックスに投稿できる保存可能な返答文を作成し、ワークフローを合理化できます。この新機能により、組織におけるテンプレートの一元的な作成および管理が可能になり、すべてのユーザーが同じテンプレートを活用できるようになります。\u003Cbr>\n\nコメントテンプレートを作成するには、GitLabの任意のコメントボックスに移動し、__「コメントテンプレートを挿入」>「グループコメントテンプレートを管理」__ の順に選択します。作成したコメントテンプレートには、すべてのグループメンバーがアクセスできます。コメント作成時に、__「コメントテンプレートを挿入」__ のアイコンを選択すると、保存された返答文が適用されます。\u003Cbr>\n\nこのコメントテンプレートにおける強化機能をぜひお試しください。また、近日中に[プロジェクトレベルのコメントテンプレート](https://gitlab.com/gitlab-org/gitlab/-/issues/440818)も追加される予定です。フィードバックがございましたら、[イシュー45120](https://gitlab.com/gitlab-org/gitlab/-/issues/451520)でコメントにてお知らせください。\n\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/profile/comment_templates.html)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/440817)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/16_11/create-group-comment-templates.png\">\n\n### ジョブアーティファクトのダウンロード権限の管理\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nデフォルトでは、パブリックパイプライン内のCI/CDジョブから生成されたすべてのアーティファクトは、パイプラインへのアクセス権を持つすべてのユーザーがダウンロード可能です。ただし、アーティファクトのダウンロードを一切許可すべきでない場合、または高いアクセスレベルを持ったチームメンバーのみに限定すべき場合もあります。\u003Cbr>\n\nそこで、このリリースでは、`artifacts:access` キーワードが導入されました。ユーザーは、どのユーザーにアーティファクトのダウンロードを許可するか設定（パイプラインへのアクセス権を持つすべてのユーザー、開発者以上のロールを持つユーザーに限定、一切許可しないなど）できるようになりました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/yaml/#artifactsaccess)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/428677)\n\n### GitLab Runner 16.11\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\n本日、GitLab Runner 16.11もリリースされます！GitLab Runnerは、CI/CDジョブを実行し、結果をGitLabインスタンスに送信する、軽量で拡張性の高いエージェントです。 GitLab Runnerは、GitLabに含まれるオープンソースの継続的インテグレーションサービスであるGitLab CI/CDと連携して動作します。\u003Cbr>\n\nバグの修正：\n- [クラッシュ：致命的なエラー：マップの同時読み取りと同時書き込み ](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/31077)\n- [「FF_KUBERNETES_HONOR_ENTRYPOINT」機能が動作しない](https://gitlab.com/gitlab-org/gitlab-runner/blob/16-11-stable/CHANGELOG.md)\n\nすべての変更のリストは、GitLab Runnerの[変更履歴](https://gitlab.com/gitlab-org/gitlab-runner/blob/16-11-stable/CHANGELOG.md)にあります。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/runner)\n\n### パイプラインの詳細ページの改善\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nパイプライングラフには、ジョブの状態、ランタイムの更新、マルチプロジェクトパイプライン、親子パイプラインなど、パイプラインの詳細な概要が表示されます。\u003Cbr>\n\n本日、デザインが一新されたパイプライングラフがリリースされます。新しいパイプライングラフは、デザイン性の改善、ジョブのグループ化、モバイル端末での利用体験の向上、既存ビュー内でのダウンストリームパイプラインの可視性の強化を特徴とします。\u003Cbr>\n\nぜひお試しの上、専用の[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/450676)からフィードバックをお寄せいただけますと幸いです。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/ci/pipelines/#view-pipelines)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/132462)\n\n### Auto DevOpsのビルド段階におけるアップグレード\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nAuto DevOpsのAuto Buildコンポーネントに使用されていた `heroku/buildpacks:20` イメージがupstreamで非推奨となったため、`heroku/builder:20` イメージに移行します。\u003Cbr>\n\nこの破壊的な変更は、upstreamの問題に対処するためにGitLabのメジャーリリース以外で実施されます。アップグレードが原因でパイプラインが破損する可能性は低いです。一時的な解決策として、手動で `heroku/builder:20` イメージを設定して[ビルダーのサンセットエラー（builder sunset error）](https://docs.gitlab.com/ee/topics/autodevops/troubleshooting.html#skipping-errors)を回避することができます。\u003Cbr>\n\nさらに、GitLab 17.0では、`heroku/builder:20` から `heroku/builder:22` へのメジャーアップグレードが別途予定されています。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/topics/autodevops/troubleshooting.html#builder-sunset-error)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/cluster-integration/auto-build-image/-/issues/73)\n\n### DASTアナライザーのパフォーマンスの更新\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n16.11リリースのマイルストーンでは、DASTにおける以下の改善が完了しました。\u003Cbr>\n\n- ナビゲーションパスを最適化することで、クローラーのパフォーマンスが向上し、スキャン時間が20%短縮（GitLabのベンチマークテストに基づく）されました。詳細については、イシューを参照してください。\n- DASTレポートを最適化してメモリ使用量を削減することで、DASTスキャン中のランナーのメモリ使用量の上昇率を抑えることに成功しました。詳細については、[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/430815)を参照してください。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/dast/browser/)\u003Cbr>\n[イシュー](https://gitlab.com/groups/gitlab-org/-/epics/12194)\n\n### 依存関係スキャンのSBOM用の依存関係グラフのサポート\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nユーザーは、依存関係スキャンレポートの一環で生成されたCycloneDX SBOMの依存関係グラフの情報にアクセスできます。以下のパッケージマネージャーを対象とした依存関係グラフの情報を使用できます。\n\n- NuGet\n- Yarn 1.x\n- sbt\n- Conan\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/dependency_list/)\u003Cbr>\n[エピック](https://gitlab.com/gitlab-org/gitlab/-/issues/366168)\n\n### コンプライアンスフレームワークにリンクされたセキュリティポリシーの表示\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nコンプライアンスセンターがコンプライアンスマネージャーにとっての中心的なハブへと進化している今、コンプライアンスフレームワークを管理する機能が備わりました。さらに、セキュリティポリシーによって確立され、コンプライアンスフレームワークに関連付けられた制御情報を可視化することもできます。\u003Cbr>\n\nこれらの包括的な制御性を活用して、コンプライアンスの対象となるプロジェクトで実行するセキュリティスキャナや2人の承認者を必須とする要件を実装したり、脆弱性管理ワークフローを確立したりできます。こうして確立した制御要件をコンプライアンスフレームワークに統合することで、フレームワーク内の関連プロジェクトが各要件に従って実行されるようになります。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/group/compliance_frameworks.html)\u003Cbr>\n[エピック](https://gitlab.com/groups/gitlab-org/-/epics/11480)\u003Cbr>\n\n\u003Cimg src=\"https://about.gitlab.com/images/16_11/cf-security-policy-link.png\">\n\n### セキュリティポリシーの重複に関する問題を解決\n\nSaaS: Ultimate\u003Cbr>\nSelf-Managed: Ultimate\u003Cbr>\n\nGitLab 16.9以前のバージョンでは、プロジェクトが親グループやサブグループのセキュリティポリシーを継承しながら、同じセキュリティポリシープロジェクトにリンクされることがありました。これが原因で、リストに重複したポリシーが表示されていました。\u003Cbr>\nこの問題は解決され、セキュリティポリシープロジェクトからすでにポリシーが継承されている場合、そのプロジェクトにリンクされることはできなくなりました。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/application_security/policies/)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/416903)\n\n### APIを使用したアプリケーションシークレットの更新\nSaaS: -\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nアプリケーションAPIを使用して、アプリケーションシークレットを更新できるようになりました。以前は、これを行うにはUIを使用する必要がありましたが、APIを使用して、プログラムに基づいたシークレットの更新を実行できるようになりました。\u003Cbr>\n\nこの場を借りて、貢献してくれた[Phawin](https://gitlab.com/lifez)に感謝します！\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/api/applications.html#renew-an-application-secret)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/422420)\n\n### 期限が迫っているグループおよびプロジェクトのアクセストークンをお知らせするWebhook通知\nSaaS: Premium、Ultimate\u003Cbr>\nSelf-Managed: Premium、Ultimate\u003Cbr>\n\nグループとプロジェクトのアクセストークン用のWebhookイベントが利用可能になりました。\u003Cbr>\n\n以前は、期限が迫っているトークンに関する通知を受け取る手段がメールだけに限られていました。Webhookイベントがトリガーされると、アクセストークンが期限切れになる7日前に実行されます。\u003Cbr>\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html#project-and-group-access-token-events)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/426147)\n\n### プロジェクトアーカイブ機能の更新\nSaaS: Free、Premium、Ultimate\u003Cbr>\nSelf-Managed: Free、Premium、Ultimate\u003Cbr>\n\nアーカイブ済みプロジェクトをプロジェクトリストで簡単に特定できるようになりました。 16.11以降、アーカイブされたプロジェクトはグループの概要の\u003Cb>アーカイブ済み\u003C/b>タブに移動し、\u003Cb>アーカイブ済み\u003C/b>バッジが表示されます。このバッジは、プロジェクト概要ページのプロジェクトタイトルにも表示されます。\u003Cbr>\nアーカイブ済みプロジェクトが読み取り専用であることを示すアラートメッセージが表示されます。このメッセージは、アーカイブ済みプロジェクトのサブページで作業する際にこの情報が見落とされることがないよう、すべてのプロジェクトページで表示されます。\u003Cbr>\nまた、グループを削除しようとすると、アーカイブ済みプロジェクトが誤って削除されることを防止するために、確認モーダルにアーカイブ済みプロジェクトの件数が表示されるようになりました。\n\n[ドキュメント](https://docs.gitlab.com/ee/user/project/working_with_projects.html#archive-a-project)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/23667)\u003Cbr>\n[イシュー](https://gitlab.com/gitlab-org/gitlab/-/issues/18069)\n\n\u003Cimg src=\"https://about.gitlab.com/images/16_11/updated_project_archiving.png\">\n\n## 実験的な機能\n\n### GitLab CIステップを使用したGitHubアクションの実行（実験）\n\n新しいGitLab Steps構文とStep Runnerを利用することで、CI/CDワークフロー用のGitHub ActionsをGitLab CI/CDパイプラインに組み込めるようになりました。この機能により、GitHub Actionsから移行するユーザーをオンボーディングする際のプロセスを簡素化できます。\u003Cbr>\n\nこの機能は実験的に導入されました。詳細については、[こちらのドキュメント](https://docs.gitlab.com/ee/ci/steps/index.html)を参照してください。\n\n### ロギング（実験）\n\nロギングを利用することで、インフラストラクチャレベル（システムログ）やエンドユーザーアプリケーションなどにおける最近のログや過去のログを収集、保持、照会することができます。さまざまなログソースを一元化することで、ユーザーは個々のイベントを関連付けてシステム内の連携を確立し、問題の根本原因を迅速に特定できるようになります。これにより、コンテキストスイッチ（ツール間の切り替え）が削減され、トラブルシューティングにおける所要時間が短縮します。\u003Cbr>\n\nこの機能は実験的に導入されました。詳細と開始方法については、[ログに関するドキュメント](https://docs.gitlab.com/ee/operations/logs)を参照してください。\n\n### メトリクス（実験）\n\nメトリクスを利用することで、Open-TelemetryライブラリとSDKを活用したデータ収集が可能になり、インフラストラクチャやアプリケーションレベルにおける過去または最近のメトリクスを収集、保持、クエリすることができます。\u003Cbr>\n\nこの機能は実験的に導入されました。詳細と開始方法については、[メトリクスに関するドキュメント](https://docs.gitlab.com/ee/operations/metrics)を参照してください。\n\n### モデルレジストリ（実験）\n\nデータサイエンティストは[モデルレジストリ](https://docs.gitlab.com/ee/user/project/ml/model_registry/)を利用することで、機械学習（ML）モデルを、その作成に関連付けられたすべてのメタデータ（パラメーター、パフォーマンスメトリクス、アーティファクト、ログなど）とともに管理できます。\u003Cbr>\n\n現在、この実験的な機能は[MLflowクライアント](https://docs.gitlab.com/ee/user/project/ml/model_registry/)と互換性があります。\n\n### バグの修正、パフォーマンスの改善、UIの改善\n\nGitLabは、ユーザーに可能な限り最高のエクスペリエンスを提供することに専念しています。 リリースごとに、バグの修正、パフォーマンスの向上、UIの強化に精力的に取り組んでいます。GitLabでは、100万人を超えるGitLab.comユーザーをはじめ、GitLabのプラットフォームをご利用いただくすべての方に、スムーズでシームレスな利用体験を届けるために精一杯取り組んでいます。\u003Cbr>\n\n16.11で提供されたすべてのバグの修正、パフォーマンスの強化、UIの改善を表示するには、以下のリンクをクリックしてください。\n- [バグの修正\n](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=type%3A%3Abug&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=16.11)\n- [パフォーマンスの改善](https://gitlab.com/groups/gitlab-org/-/issues/?sort=updated_desc&state=closed&label_name%5B%5D=bug%3A%3Aperformance&or%5Blabel_name%5D%5B%5D=workflow%3A%3Acomplete&or%5Blabel_name%5D%5B%5D=workflow%3A%3Averification&or%5Blabel_name%5D%5B%5D=workflow%3A%3Aproduction&milestone_title=16.11)\n- [UIの改善\n](https://nicolasdular.gitlab.io/gitlab-polish-gallery/?milestone=16.11)\n\n### 非推奨事項\n新たに非推奨になった機能、および現在非推奨になっているすべての機能の一覧は、[GitLabのドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。今後の破壊的な変更について通知を受けるには、[破壊的な変更のRSSフィードをサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\u003Cbr>\n\n- [`GITLAB_SHARED_RUNNERS_REGISTRATION_TOKEN`は非推奨となりました](https://about.gitlab.com/breaking-changes.xml)\n\n## 削除された機能と変更点 \n\n消去されたすべての機能の一覧は、[GitLabのドキュメント](https://docs.gitlab.com/ee/update/deprecations.html)で確認できます。 今後の破壊的な変更について通知を受けるには、[破壊的な変更のRSSフィードをサブスクライブ](https://about.gitlab.com/breaking-changes.xml)してください。\n\n## その他の重要な変更\n\n### パッチとセキュリティの統合リリース\n\nGitLabは、4月に「パッチ」および「セキュリティ」のリリースを一新し、これらを[セマンティックバージョニング](https://semver.org/)の標準に準拠した「パッチ」リリースに統合しました。\u003Cbr>\n\n変更の詳細については、[パッチリリースとセキュリティリリースの統合](https://about.gitlab.com/blog/were-combining-patch-and-security-releases/)に関するブログ記事を参照してください。\n\n### メジャーリリースに先立つ破壊的な変更の実施日時\n\n17.0のメジャーリリースは2024年5月16日に予定されています！\u003Cbr>\n\nこのバージョンでは、GitLabに多くの素晴らしい改善が加えられる一方で、同時に非推奨機能も削除されます。破壊的な変更は、以下の3回の日程で実施されます。この期間に、17.0における破壊的な変更の大部分がGitLab.comにデプロイされることが予想されます。\n\n- 2024年4月22日9時00分～2024年4月24日22時00分（協定世界時）\n- 2024年4月29日9時00分～2024年4月31日22時00分（協定世界時）\n- 2024年5月6日9時00分～2024年5月8日22時00分（協定世界時）\n\n詳細については、[GitLab 17.0における重大かつ破壊的な変更に関するガイド記事](https://about.gitlab.com/blog/a-guide-to-the-high-impact-breaking-changes-in-gitlab-17-0/)を参照してください。\n今年のメジャーリリースで予定されているすべての削除項目を確認するには、[非推奨ページ](https://docs.gitlab.com/ee/update/deprecations?removal_milestone=17.0)にアクセスしてください。\n\n## 変更履歴\n変更内容をすべて表示するには、以下のページから変更履歴を確認してください。\n\n- [GitLab](https://gitlab.com/gitlab-org/gitlab-foss/blob/master/CHANGELOG.md)\n- [GitLab Runner](https://gitlab.com/gitlab-org/gitlab-runner/blob/main/CHANGELOG.md)\n- [VS CodeのGitLabワークフロー](https://gitlab.com/gitlab-org/gitlab-vscode-extension/-/blob/main/CHANGELOG.md)\n- [GitLab CLI](https://gitlab.com/gitlab-org/cli/-/releases)\n\n## インストール\n新しいGitLabのインストールをセットアップする場合は、[GitLabのダウンロードページ](https://about.gitlab.com/install/)を参照してください。\n## 更新\n[更新ページ](https://about.gitlab.com/update/)を確認してください。\n## ご質問\nご意見をお聞かせください。本リリースについてご不明な点がある場合は、[GitLabフォーラム](https://forum.gitlab.com/)にアクセスし質問を投稿してください。\u003Cbr>\u003Cbr>\n\n*監修：大井 雄介 （GitLab合同会社 ソリューションアーキテクト本部 本部長）*\n\n### 過去の日本語リリース情報\n\n- [GitLab 18.0](https://about.gitlab.com/ja-jp/blog/gitlab-18-0-release/)\n- [GitLab 17.11](https://about.gitlab.com/ja-jp/blog/gitlab-17-11-release/)\n- [GitLab 17.10](https://about.gitlab.com/ja-jp/blog/gitlab-17-10-release/)\n- [GitLab 17.9](https://about.gitlab.com/ja-jp/blog/gitlab-17-9-release/)\n* [GitLab 17.8](https://about.gitlab.com/ja-jp/blog/gitlab-17-8-release/)\n* [GitLab 17.7](https://about.gitlab.com/ja-jp/blog/gitlab-17-7-release/)\n* [GitLab 17.6](https://about.gitlab.com/ja-jp/blog/gitlab-17-6-release/)\n* [GitLab 17.5](https://about.gitlab.com/ja-jp/blog/gitlab-17-5-released/)  \n* [GitLab 17.4](https://about.gitlab.com/ja-jp/blog/gitlab-17-4-released/)  \n* [GitLab 17.3](https://about.gitlab.com/ja-jp/blog/gitlab-17-3-released/)  \n* [GitLab 17.2](https://about.gitlab.com/ja-jp/blog/gitlab-17-2-released/)  \n* [GitLab 17.1](https://about.gitlab.com/ja-jp/blog/gitlab-17-1-released/)  \n* [GitLab 16.11](https://about.gitlab.com/ja-jp/blog/gitlab-16-11-released/)\n","2024-06-25",{"slug":1331,"featured":6,"template":679},"gitlab-16-11-released","content:ja-jp:blog:gitlab-16-11-released.yml","Gitlab 16 11 Released","ja-jp/blog/gitlab-16-11-released.yml","ja-jp/blog/gitlab-16-11-released",{"_path":1337,"_dir":248,"_draft":6,"_partial":6,"_locale":7,"seo":1338,"content":1346,"config":1356,"_id":1358,"_type":16,"title":1359,"_source":18,"_file":1360,"_stem":1361,"_extension":21},"/ja-jp/blog/tutorial-automated-release-and-release-notes-with-gitlab",{"title":1339,"description":1340,"ogTitle":1341,"ogDescription":1340,"noIndex":6,"ogImage":1342,"ogUrl":1343,"ogSiteName":770,"ogType":1344,"canonicalUrls":1343,"schema":1345},"チュートリアル：GitLabでリリースとリリースノートを自動化する","GitLabのChangelog APIを使用すると、リリースアーティファクト、リリースノートなどの変更をまとめた、包括的な変更履歴の生成を自動化できます。","チュートリアル：GitLabでリリース自動化とリリースノート自動生成","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659978/Blog/Hero%20Images/automation.png","https://about.gitlab.com/blog/tutorial-automated-release-and-release-notes-with-gitlab","記事","\n                        \n        {\"@context\": \" https://schema.org \",\n        \"@type\": \"Article\",\n        \"headline\": \"チュートリアル：GitLabでリリース自動化とリリースノート自動生成\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"Ben Ridley\"}],\n        \"datePublished\": \"2023-11-01\n      \",}",{"title":1341,"description":1340,"authors":1347,"heroImage":1342,"date":1349,"body":1350,"category":14,"tags":1351,"updatedDate":1355},[1348],"Ben Ridley","2023-11-01","***2025年の更新情報**  GitLab Changelog APIは進化を続けており、今回のブログでは取り上げていない優れた新機能も追加されています。たとえば、コミット履歴からテンプレート化された値を使ってカスタムの変更履歴を提供できるようになっています。[詳しくは、変更履歴に関する公式ドキュメントをご覧ください。](https://docs.gitlab.com/user/project/changelogs/)*\n\nユーザーが頼りにしているソフトウェアを開発する際には、各リリースでの変更点を効果的に伝えることが不可欠です。新機能や変更点、削除された内容をきちんと伝えることで、ユーザーはソフトウェアを最大限に活用でき、アップグレード時の思わぬトラブルも回避できます。\n\nこれまで、リリースノートの作成や変更履歴の管理は手間のかかる作業でした。デベロッパーが外部ツールで変更を追跡したり、リリースマネージャーがマージ履歴を手作業で確認したりする必要があったためです。GitLabのChangelog APIを使うと、Gitリポジトリに記録された豊富な履歴情報を活用して、リリースノートの作成や変更履歴の管理を簡単に行うことができます。\n\nこのチュートリアルでは、GitLabを使ったリリースの自動化について詳しく説明します。リリースアーティファクトの生成、リリースノートの作成、そしてユーザーに関係する変更点をすべて網羅した包括的な変更履歴の生成方法について取り上げます。\n\n## GitLabにおけるリリース\nまずは、GitLabでリリースがどのように機能しているのかを見ていきましょう。\n\nGitLabにおけるリリースとは、Gitタグで識別される特定のコードバージョンのことを指します。このリリースには、前回のリリース以降に行われた変更内容（およびリリースノート）や、そのバージョンのコードからビルドされた関連アーティファクト（Dockerイメージ、インストールパッケージ、ドキュメントなど）が含まれます。\n\nリリースは、GitLabのUIを使って作成・管理することもできますし、Release APIを呼び出すか、CIパイプラインの中に特別な`release`ジョブを定義することでも実現できます。このチュートリアルでは、CI/CDパイプライン内の`release`ジョブを使用します。これにより、テストやコードスキャンなどに使っている自動化プロセスを、リリースの実行にも拡張できるようになります。\n\nリリースを自動化するために、まず確認しなければならないことがあります。「リリースノートや変更履歴を作成するための変更情報は、どこから取得するのか？」その答えは、Gitリポジトリです。コミットメッセージやマージコミットの履歴を通じて、豊富な開発履歴が得られます。この情報を活用して、リリースノートや変更履歴を自動生成できるか試してみましょう。\n\n## コミットトレーラーの導入\n[コミットトレーラー](https://git-scm.com/docs/git-interpret-trailers)とは、Gitのコミットメッセージの末尾に追加する、構造化されたエントリーのことです。書き方はシンプルで、`\u003CHEADER>:\u003CBODY>`という形式のメッセージをコミットの最後に追加するだけです。これにより、`git`のコマンドラインインターフェース（CLI）ツールがそれらを解析して、他のシステムで利用できるようになります。たとえば、すでに使ったことがあるかもしれませんが、`git commit --sign-off`でコミットに署名する機能もこの仕組みを使っています。これは、`Signed-off-by: \u003Cあなたの名前>`というトレーラーをコミットに追加することで実現されています。このトレーラーには、好きな構造化データを自由に追加できるので、変更履歴に役立つ情報を保存する場所として非常に便利です。\n\n実際に、コミットに`Changelog: \u003Cadded/changed/removed>`というトレーラーを使うと、GitLabのChangelog APIがそれを解析し、自動的に変更履歴を生成してくれます！\n\nそれでは、実際のコードベースに変更を加えてリリースを行い、リリースノートと変更履歴のエントリーを生成する手順を見ていきましょう。\n\n## サンプルプロジェクトについて\n今回のブログでは、シンプルなPythonのWebアプリのリポジトリを使っています。仮に、このアプリケーションのバージョン1.0.0がちょうどリリースされたばかりで、これが現在のコードのバージョンだとしましょう。また、GitLab上で1.0.0のリリースも作成してありますが、これはまだ自動化されたリリースパイプラインを作っていないため、手動で作成しました。\n\n![GitLabのUI上で、バージョン1.0.0のリリースが表示されているスクリーンショット](https://about.gitlab.com/images/blogimages/2023-08-22-automated-release-and-release-notes-with-gitlab/1-0-release.png)\n\n## 変更の実施\n現在は開発を急ピッチで進めている段階なので、今日はアプリケーションのバージョン2.0.0のリリース作業を進めていきます。2.0.0リリースでは、アプリに新機能の「チャットボット」を追加します。そして、量子ブロックチェーン機能は削除します。これは最初のベンチャーキャピタル向けに必要だっただけなので、もう不要です。さらに、2.0.0リリースに向けて、CI/CDパイプラインに自動リリースジョブも追加する予定です。\n\nまずは不要な機能の削除から始めましょう。不要な部分を削除したマージリクエストを作成しました。ここで重要なのは、コミットメッセージに`Changelog: removed`トレーラーを含めることです。これを行う方法はいくつかあります。たとえば、最初からコミットに直接含めたり、インタラクティブリベースを使ってCLIで後から追加したりもできます。しかし、今回の状況では、一番簡単な方法は最後にGitLabの`Edit commit message`ボタンを使って、マージコミットにトレーラーを追加する方法だと思います。\n\n![GitLabのUIに表示された、使われていない機能を削除するマージリクエストのスクリーンショット](https://about.gitlab.com/images/blogimages/2023-08-22-automated-release-and-release-notes-with-gitlab/remove-unused-features-mr.png)\n\nこの方法を使えば、マージコミットのタイトルをもっと簡潔なものに変更することもできます。ここでは、マージコミットのタイトルを'Remove Unused Features'に変更しました。これは変更履歴のエントリに表示されます。\n\n次に、2.0.0リリース用の新機能を追加しましょう。ここでも、新機能を含む別のマージリクエストを開き、マージコミットを編集して`Changelog: added`トレーラーを追加し、コミットのタイトルをより簡潔に編集するだけです。\n\n![GitLabのUIに表示された、新しい機能を追加するマージリクエストのスクリーンショット](https://about.gitlab.com/images/blogimages/2023-08-22-automated-release-and-release-notes-with-gitlab/add-chatbot-mr.png) \n\nこれで、バージョン2.0.0をリリースする準備はほとんど整いました。ただし、今回は手動でリリースを作成したくありません。そのため、リリースの前に`.gitlab-ci.yml`ファイルにいくつかのジョブを追加し、コードに`2.0.0`のような新しいバージョンのタグを付けた際に、自動でリリース処理を行い、対応するリリースノートや変更履歴のエントリを生成するようにします。\n\n**注：**変更履歴のトレーラーを強制したい場合は、[Dangerのようなツールを使用して、マージリクエストの規則を自動的にチェックする](https://docs.gitlab.com/ee/development/dangerbot.html)方法を検討してください。\n\n## 自動リリースパイプラインの構築\nパイプラインを機能させるには、プロジェクトアクセストークンを作成し、GitLabのAPIを呼び出して変更履歴のエントリーを生成できるようにする必要があります。[APIスコープを指定してプロジェクトアクセストークンを作成](https://docs.gitlab.com/ee/user/project/settings/project_access_tokens.html#create-a-project-access-token)し、それを`CI_API_TOKEN`という名前の[CI/CD変数として保存](https://docs.gitlab.com/ee/ci/variables/#define-a-cicd-variable-in-the-ui)します。この変数を参照して、APIの認証を行います。\n\n次に、`gitlab-ci.yml`ファイルに以下の2つの新しいジョブを追加します。\n```yaml\nprepare_job:\n  stage: prepare\n  image: alpine:latest\n  rules:\n  - if: '$CI_COMMIT_TAG =~ /^v?\\d+\\.\\d+\\.\\d+$/'\n  script:\n    - apk add curl jq\n    - 'curl -H \"PRIVATE-TOKEN: $CI_API_TOKEN\" \"$CI_API_V4_URL/projects/$CI_PROJECT_ID/repository/changelog?version=$CI_COMMIT_TAG\" | jq -r .notes > release_notes.md'\n  artifacts:\n    paths:\n    - release_notes.md\n\nrelease_job:\n  stage: release\n  image: registry.gitlab.com/gitlab-org/release-cli:latest\n  needs:\n    - job: prepare_job\n      artifacts: true\n  rules:\n  - if: '$CI_COMMIT_TAG =~ /^v?\\d+\\.\\d+\\.\\d+$/'\n  script:\n    - echo \"Creating release\"\n  release:\n    name: 'Release $CI_COMMIT_TAG'\n    description: release_notes.md\n    tag_name: '$CI_COMMIT_TAG'\n    ref: '$CI_COMMIT_SHA'\n    assets:\n      links:\n        - name: 'Container Image $CI_COMMIT_TAG'\n          url: \"https://$CI_REGISTRY_IMAGE/$CI_COMMIT_REF_SLUG:$CI_COMMIT_SHA\"\n```\n\n上記の設定では、`prepare_job`が`curl`と`jq`を使ってGitLabのChangelog APIエンドポイントを呼び出し、その結果を`release_job`に渡して、リリースの作成を行います。詳しく見ていきましょう。\n- まず、先ほど作成したプロジェクトアクセストークンを使ってGitLabのChangelog APIを呼び出し、リリースノートを生成します。そして、その出力をアーティファクトとして保存します。\n- バージョンには`$CI_COMMIT_TAG`変数を使用しています。この仕組みが機能するには、タグにセマンティックバージョニング（たとえば`2.0.0`のような形式）を使用する必要があります。そのため、リリースジョブには、セマンティックバージョンのタグが付いているかどうかを確認する`rules`セクションを追加しています。\n\t- GitLabのChangelog APIを使うには、セマンティックバージョニングが必要です。この形式を用いて、現在のリリースとの比較対象となる最新リリースを特定します。\n- GitLabが提供する公式の`release-cli`イメージを使用しています。ジョブ内で`release`キーワードを使うには、この`release-cli`が必要です。\n- `release`キーワードを使用して、GitLab上にリリースを作成します。これは、リリースの作成と必須フィールドの入力のために確保されている特別なジョブキーワードです。\n- リリースの`description`には、ファイルを引数として渡すことができます。今回の例では、`prepare_job`で生成し、アーティファクトとしてこのジョブに渡されたファイルを使っています。\n- さらに、パイプラインの早い段階でビルドされているコンテナイメージも、リリースアセットとして追加しています。ビルドプロセスの中で作成したバイナリやドキュメントなども、パイプライン内でアップロード済みのURLを指定することで、リリースアセットとして添付できます。\n\n## 自動リリースの実行\nこの設定が完了すれば、リリースを実行するために必要なのは、バージョン付けのルールに従ったタグをリポジトリにプッシュすることだけです。CLIからタグをプッシュすることもできますが、ここではGitLabのUIを使って、mainブランチにタグを作成する例をご紹介します。タグを作成するには、サイドバーからコード > タグ > 新しいタグを選択します。\n![タグの作成方法を示すGitLabのUIのスクリーンショット](https://about.gitlab.com/images/blogimages/2023-08-22-automated-release-and-release-notes-with-gitlab/create-2-tag.png)\n\nタグの作成が完了すると、パイプラインの実行が開始されます。 GitLabのChangelog APIが、今回のリリースと前回のリリースの間に行われた変更をすべて含むリリースノートをMarkdown形式で自動的に生成します。 以下は、この例で生成されたMarkdownの出力結果です。\n\n```md\n## 2.0.0 (2023-08-25)\n\n### added (1 change)\n\n- [Add ChatBot](gl-demo-ultimate-bridley/super-devsecops-incorporated/simply-notes-release-demo@0c3601a45af617c5481322bfce4d71db1f911b02) ([merge request](gl-demo-ultimate-bridley/super-devsecops-incorporated/simply-notes-release-demo!4))\n\n### removed (1 change)\n\n- [Remove Unused Features](gl-demo-ultimate-bridley/super-devsecops-incorporated/simply-notes-release-demo@463d453c5ae0f4fc611ea969e5442e3298bf0d8a) ([merge request](gl-demo-ultimate-bridley/super-devsecops-incorporated/simply-notes-release-demo!3))\n```\n\nご覧のとおり、GitLabはgitのコミットトレーラーをもとに、リリースノートのエントリを自動で抽出しています。さらに、変更の詳細やディスカッションが確認できるよう、マージリクエストへのリンクも付けられています。\n\nそしてこちらが、最終的に作成されたリリースです。\n![GitLabのリリースUIに表示された、バージョン2.0.0のリリース画面](https://about.gitlab.com/images/blogimages/2023-08-22-automated-release-and-release-notes-with-gitlab/2-0-release.png)\n\n## 変更履歴の作成\n次に、変更履歴（すべてのリリースノートをまとめた履歴）を更新します。これを行うには、先ほど使用したChangelog APIエンドポイントに対して、`POST`リクエストを送ります。\n\n必要であれば、この処理をリリースパイプラインの一部として実行することも可能です。たとえば、prepareジョブの`script`セクションに以下の内容を追加します。\n```sh\n'curl -H \"PRIVATE-TOKEN: $CI_API_TOKEN\" -X POST \"$CI_API_V4_URL/projects/$CI_PROJECT_ID/repository/changelog?version=$CI_COMMIT_TAG\"\n```\n\n**この処理は実際にリポジトリを変更する点にご注意ください。** 具体的には、最新のリリースノートを`CHANGELOG.md`ファイルに追加するためのコミットが作成されます。\n![変更履歴ファイルを更新するコミットを示すリポジトリのスクリーンショット](https://about.gitlab.com/images/blogimages/2023-08-22-automated-release-and-release-notes-with-gitlab/changelog-api-commit.png)\n\nこれですべて完了です！`git`が提供する豊富な履歴情報と、便利なコミットトレーラーを活用することで、GitLabの強力なAPIとCI/CDパイプラインを使って、リリースプロセスとリリースノートの生成を自動化できます。\n\n> この記事で使用したプロジェクトを実際に確認したい場合は、[こちらのリンク](https://gitlab.com/gitlab-learn-labs/sample-projects/release-automation-demo)からご覧いただけます。\n",[1352,803,110,1353,752,1354],"チュートリアル","DevOps","git","2025-06-05",{"slug":1357,"featured":6,"template":679},"tutorial-automated-release-and-release-notes-with-gitlab","content:ja-jp:blog:tutorial-automated-release-and-release-notes-with-gitlab.yml","Tutorial Automated Release And Release Notes With Gitlab","ja-jp/blog/tutorial-automated-release-and-release-notes-with-gitlab.yml","ja-jp/blog/tutorial-automated-release-and-release-notes-with-gitlab",4,[686,706,726,744,763,788,812,832,851],1758326274573]