質問編集履歴

1

「実現したいこと」が分かりにくかったため修正。

2022/07/04 02:03

投稿

throwsNullPo
throwsNullPo

スコア17

test CHANGED
File without changes
test CHANGED
@@ -10,6 +10,7 @@
10
10
  GitLab
11
11
 
12
12
  **ファイル構成**
13
+ 四則演算を実行する関数を実装した`sample.py`とそのテストコードを以下のように配置。
13
14
  ```
14
15
  gitlab-ci-test #リポジトリ名
15
16
  └ .gitlab-ci.yml
@@ -21,28 +22,15 @@
21
22
  ```
22
23
 
23
24
  **ソースコード**
24
- 最後にまとめて記載。
25
+ CI/CD側でpytestが通る状態のものを最後にまとめて記載。
25
26
 
26
27
  ### 実現したいこと
27
- GitLabのCI/CDでpthファイルを(適切な場所に)配置してpytestを実行したい。
28
- 現状の実装ではGitLabpushした際にunit testは通が、`test_sample1.py`, `test_sample2.py`の中で`sys.path`を直接編集てしまって。pthファイルを用いるとローカルでは`test_sample1.py`, `test_sample2.py`冒頭の
28
+ GitLabのCI/CDでpytestがパスす状態を維持したまま`test_sample1.py`, `test_sample2.py`冒頭4行のimportコメントアウトされている1行で書き直しい。そのために、pthファイルを用いたCI/CD設定方法が知りたい。
29
- ```Python
29
+
30
- import os, sys
31
- current_path = os.path.dirname(os.path.abspath(__file__))
32
- sys.path.insert(0, current_path + '/../')
33
- import sample as funcs
34
- ```
35
-
36
- ```Python
37
- from calc import sample as funcs
38
- ```
39
- の一行で代替できることを確認済み。
40
30
 
41
31
  ### 該当のソースコード
42
- pthファイルをローカルで使用する場合は任意の名前で`C:\Users\[ユーザー名]\anaconda3\envs\[仮想環境名]\lib\site-packages`に配置。
43
- ```hoge.pth
32
+ **pythonファイル**
44
- C:/spyder-workspaces/gitlab-ci-test
33
+
45
- ```
46
34
  ```Python:sample.py
47
35
  def add(x, y):
48
36
  return x + y
@@ -102,8 +90,9 @@
102
90
  if __name__ == '__main__':
103
91
  pytest.main()
104
92
  ```
105
-
93
+ **ymlファイル**
94
+ `.gitlab-ci.yml`は以下の通り。
106
- CI/CD用のymlファイルはGitLabで空のプロジェクトを作っ画面から追加できるひな形を流用。このファイルをもう少しいじれば目当てのことができのだと思うが該当の情報探しきれず、どこをどうき直せば見当もつかないため手詰まり状態
95
+ [追記]`before_script`あpthファイルを配置す命令を書けないか試行錯誤中
107
96
  ```yml
108
97
  image: continuumio/anaconda3:latest
109
98
 
@@ -143,6 +132,13 @@
143
132
  - echo "Application successfully deployed."
144
133
 
145
134
  ```
135
+ ここまでがCI/CDでpytest通る実装。
136
+ **pthファイル**
137
+ 他のソースファイルはpthファイル未配置前提での記載。
138
+ ローカルでpthファイルを`C:\Users\[ユーザー名]\anaconda3\envs\[仮想環境名]\lib\site-packages`に配置して`test_sample1.py`, `test_sample2.py`の冒頭4行をその下のコメントアウトされている1行に書き換えてもpytestが通ることを確認済み。
139
+ ```hoge.pth
140
+ C:/spyder-workspaces/gitlab-ci-test
141
+ ```
146
142
 
147
143
 
148
144