gitlab web UI って何？ (サイドバー後編)

# 概要
本ページでは、gitlab web UI の機能のうち、
サイドバーに関する項目をさらっと説明します。

メインページは以下になります。

https://qiita.com/hanzo-k/private/174e6c003ea111d3ccca

前編は以下になります。

https://qiita.com/hanzo-k/private/6d9a473c26dbaad51e02

# サイドバーの機能（後編）
## Deployments :red_circle: 
gitlab と 各環境（開発環境や STG 環境など）を連携し、
いい感じの開発ができるようにする仕組みのようです。

なので、開発者でなければ触る必要はありません。
私も使ったことはありません。

どうやら、使うための準備が複雑で、
ボタン1つで簡単に使えるものではないようです。


### Feature Flags :red_circle: 
gitlab で開発したコード（アプリケーション）の特定の機能だけを有効、無効にできる、という機能らしいです。

使ったことはありませんが、開発者用の機能ですね。
興味のある方は Feature Flags で検索してみましょう。

### Environment :red_circle:  
gitlab と連携したい環境を登録します。
http や https でアクセスできる環境じゃないと駄目なので、
クラウドサービスなどと連携した方が良いでしょう。

### Releases :red_circle: 
gitlab のコードを各環境にリリース（適用）する機能のようです。
もちろん、前項の Environment（リリース先）を登録しないと使えません。


## Monitor :red_circle: 
前項の Deployments > Environment で登録した環境を監視できる機能のようです。
ログの確認やアラートの登録など色々な操作ができるようですが、
Environment を登録しないと使えないため、**普通は使いません。**

私も未使用なので断定はできませんが、
**ログの確認ができるらしいので、**
プロジェクトによっては、ここの機能でログを見て欲しい、
などと言われるかもしれません。


## Infrastructure :red_circle: 
クラウドサービス（Kubernetes や Teraform）と gitlab を連携するための機能のようです。

まず使わないと思うので、触らない方が良いでしょう。

### Kubernetes clusters :red_circle: 
Kubernetes clusters と gitlab のプロジェクトを連携する機能のようです。
また、ヘルプを読むと、バージョン 14.5 以降は非推奨のようです。

### Serverless platform :red_circle: 
ヘルプを読むと、バージョン14.4 では非推奨の機能らしいので、触らない方が良いです。

### Teraform :red_circle: 
IaC プラットフォームである Teraform のコードを gitlab で管理できる機能の様です。


## Packages ＆ Registries :red_circle: 
gitlab で作ったコードをパッケージやコンテナ化し、
yum などのパッケージ管理ツールや Docker から使えるようにする機能です。

**実際の開発現場でも、gitlab を yum のレポジトリ代わりにするケースはあるので、知っておくと便利かもしれません。**
※プロジェクトで作成したツールを使用する場合や、
　プロキシ環境下で社内LANから出られない場合など

ただし、コードやファイルからパッケージなどを作る場合は、
CI/CD の定義や、各種パッケージ管理ソフトの知見が必要になるため、
前提知識の習得が必要になります。

以下、メニューの内容です。

+ Package Registry
  パッケージの一覧を管理する場所

+ Container Registry
  コンテナの一覧を管理する場所

+ Infrastructure Registry
  Teraform のモジュールの一覧を管理する場所。
　詳細は未調査。


## Analytics :ok: 
そのプロジェクトにおける活動状況の記録が見られます。
直近の issue の発行件数、コード作成数、テストの実施数など。

とはいえ、それぞれの件数は各機能の一覧で把握できるので、
個人的にはあまり意味がない気がします。

### CI/CD :ok: 
CI/CD の実行記録をグラフで見られます。

### Repository :ok: 
どの言語が一番多いのか、
コミットの頻度はどのくらいか、などが分かります。

### Value stream :ok: 
最近の issue、テスト（CI/CD）、レビュー（MR）の状況を俯瞰的に見られます。


## Wiki :ok: 
自由にページが作れます。
ドキュメントや手順書を作るのに最適でしょう。

開発物を格納する場合は、設計書やリリースなどの手順書、
ライブラリを格納する場合は、そのマニュアルを置いておくと良いです。


## Snippets :ok: 
snippet と呼ばれる短文を作成できます。

プロジェクト内じゃなくても作成できるので、
わざわざここで作成する必要はありません。

※snippets についての詳細は以下を参照

https://qiita.com/hanzo-k/private/6f61fe5dd47296c4071a#snippets

## Settings :red_circle: 
プロジェクトの設定に関する項目です。
なので、管理者以外は触らない方が良いです。

念のため、各ページの意味だけ記載します。

+ General
  - プロジェクトの名前やアバター（アイコン）の変更
  - 利用できる機能の選択
  - プロジェクトの移動、削除など
+ integration
  - 外部サービスに対して、gitlab の更新通知を送信できるもの
  - 例えば、issue の更新を、Slack や Teams に対して通知したりできる
+ Webhooks
  - 外部サービスの Webhooks URL に対して、gitlab の更新通知を送信できるもの
  - ヘルプを読む限りでは。integration の方を使った方が良い（もっと簡単にできる）
+ Acces Tokens
  - gitlab の API を使う際のトークンを作成できます
  - API を使うと、gitlab のファイルをアプリケーションから参照できたりするので便利です
+ Repository
  - ブランチ や deploy に関する設定を行います
  - デフォルトのブランチを決めたり、ブランチの保護を行うのがメインです
+ CI/CD
  - CI/CD の設定を行います
  - CI/CD を実行するホストの設定(Runners)を行うのがメインです
+ Monitor
  - 同名の機能に関する設定を行います
+ Pages
  - gitlab 上で静的な web ページを公開する設定
  - コードを書いてそのまま公開できるらしい
  - ただ、あくまで静的なサイトなので、DBの情報を表示したり、閲覧者が更新したりはできない（と思う）
+ Packages ＆ Registries
  - 同名の機能に関する設定を行います