---
# System prepended metadata

title: III Dev Env
tags: [5G, III]

---

III Dev Env
===

###### tags: `III` `5G`

## Tool
* valgrind
* openapi-generator
* [Landslide](http://10.22.100.134/)
* gperftools
* [gdb-frontend](https://github.com/rohanrhu/gdb-frontend)
* [CMake](https://www.bookstack.cn/read/CMake-Cookbook/README.md)
* [g++](https://hackmd.io/@derailment/gplusplus)

---

## Language
* [C++](https://hackmd.io/@derailment/cpp)
* [Python](https://hackmd.io/@derailment/python)

---

## Env
* VM
10.22.100.130
10.22.100.90
* GitLab Runner
10.22.100.108
* K8s
10.22.100.233 (vm10/vm10)
10.22.124.10 (xk8s/xk8s)
* DNS
```
# /etc/resolv.conf
nameserver 10.22.100.71
nameserver 10.22.100.72
search nmsi.pri
```
* EIP
140.92.66.137
* gitvepc.nmsi.pri
10.22.100.93
* NFS Server 
192.168.7.136
* docker5gc.nmsi.pri
10.22.100.108

---

## git
* step
  1. Fork upstream repository as self repository
  2. Add remote upstream repository
  3. Pull upstream issuing branch
  ```
  git fetch upstream issue0
  git checkout issue0
  git merge upstream/issue0
  ```
  4. Push to upstream issuing branch
  5. Merge request
* useful commands
  * 查遠端每個 commit 的檔案變化
  ```
  git fetch <remote> <branch>:<branch>
  git log <remote>/<branch> --name-status --oneline
  ```
  * 開新分支
  ```
  # add branch which can be made aware of a remote branch
  git branch -r
  git checkout --track origin/mybr
  # add branch based on current commit
  git checkout -b mybr
  # add branch based on git init state (no any commit)
  git checkout --orphan mybr
  ```
  * 還原
  ```
  # remove untracked files and directories regardless of .gitignore
  git clean -xdff
  # restore tracked all files
  git reset --hard HEAD
  # restore tracked file respectively
  git checkout -- FILE
  ```

---

## ilog
```
ilog system info
sudo ilog pts 0 on
sudo ilog pts this on
sudo ilog pts 8 3
sudo ilog pts 8 del
```
- [ilog - severity](http://gitvepc/nelson/vMME/snippets/18)
- [ilog - commands](http://gitvepc/nelson/vMME/-/blob/master/ulibs/ilog/complete/_ilog)

---

## VSCode
- [VSCode 的常用快捷鍵](https://codertw.com/%E7%A8%8B%E5%BC%8F%E8%AA%9E%E8%A8%80/458829/)

---

## Landslide
* SUT - 待測端
* TS - Landslide模擬端
* TAS - 管理TS

---

## DevOps
- [GitLab CI/CD](https://hackmd.io/@derailment/gitlab-cicd)
- [Troubleshooting](https://hackmd.io/@derailment/troubleshooting)
- [Private Docker Registry](https://hackmd.io/@derailment/docker-registry)
- [CI/CD 概念教學](https://hackmd.io/@derailment/iii-cicd-tutorial)

---

## Commands
印出第一欄，除掉第一列和某筆資料
```
docker images | awk 'NR > 1 && !/gitlab\/gitlab-runner\s/ {print $1}'
```

---

## Clean up vMME
移除專案內的``.o``, ``.so``, ``.a``, executables, etc.
```
git clean -xdff
```
移除 ilog 的產出
```
rm -rf  /lib/libilog.so
rm -rf  /bin/ilog
rm -rf /usr/share/zsh/functions/Completion/Zsh
```
重新編譯
```
. 1.setup_env.sh
GITLAB_ENV=build ./2.make_all.sh
```