質問編集履歴

3

修正

2021/04/06 05:19

投稿

knonknon
knonknon

スコア4

test CHANGED
File without changes
test CHANGED
@@ -1,257 +1,3 @@
1
- laravelで別サーバcsvファイルを取得して/storage/app/に保存するバッチを作り、herokuスケジューラで実行するシステムを作りまし。ローカル環境では問題なく動作しますがherokuで動作させるとファイルが保存されません。自分では解決できそうなく、質問させていただきました。何が悪いのか分からず、わかる方、どうぞご教授よろしくお願い致します。スキルは高くないためできれば簡単なご説明をいただけると大変ありがたいです。
1
+ 以下質問と内容が重複するためリンクに致します。
2
2
 
3
-
4
-
5
- 流れ
6
-
7
- 1.heroku上でartisanコマンドを実行して動作させる
8
-
9
- 2.エラーもなく処理が終わる
10
-
11
- 3.ls -al storage/appでファイル一覧を見てみるがファイルが作成されていない
12
-
13
-
14
-
15
- FTPの接続情報をfilesystem.phpに設定し、Storage(FileStorageFlysystemパッケージ)を利用して別サーバーにあるcsvファイルを取得して/storage/app/に保存しようとしています。詳細なソースは以下です。disk('local')ではなくdisk('public')でも試してみたり、disk('ftp')でもやってみましたがheroku上では上手くいきません。
16
-
17
-
18
-
19
- Laravel Framework 7.30.4
20
-
21
- ■filesystem.php
22
-
23
- こちら以外はデフォルトのままです
24
-
25
- ```
26
-
27
- 'disks' => [
28
-
29
-
30
-
31
- 'local' => [
32
-
33
- 'driver' => 'local',
34
-
35
- 'root' => storage_path('app'),
36
-
37
- ],
38
-
39
-
40
-
41
- 'public' => [
42
-
43
- 'driver' => 'local',
44
-
45
- 'root' => storage_path('app/public'),
46
-
47
- 'url' => env('APP_URL').'/storage',
48
-
49
- 'visibility' => 'public',
50
-
51
- ],
52
-
53
-
54
-
55
- 's3' => [
56
-
57
- 'driver' => 's3',
58
-
59
- 'key' => env('AWS_ACCESS_KEY_ID'),
60
-
61
- 'secret' => env('AWS_SECRET_ACCESS_KEY'),
62
-
63
- 'region' => env('AWS_DEFAULT_REGION'),
64
-
65
- 'bucket' => env('AWS_BUCKET'),
66
-
67
- 'url' => env('AWS_URL'),
68
-
69
- 'endpoint' => env('AWS_ENDPOINT'),
70
-
71
- ],
72
-
73
-
74
-
75
- 'ftp' => [
76
-
77
- 'driver' => 'xxx',
78
-
79
- 'host' => 'xxxxx',
80
-
81
- 'username' => 'xxxxx',
82
-
83
- 'password' => 'xxxxx',
84
-
85
- ],
86
-
87
-
88
-
89
-
90
-
91
- ],
92
-
93
- ```
94
-
95
-
96
-
97
- ■DailyDownloadCsvSchedule.php
98
-
99
- ここのコマンドをheroku上で呼び出しています
100
-
101
- ```
102
-
103
- namespace App\Console\Commands;
104
-
105
-
106
-
107
- use Illuminate\Console\Command;
108
-
109
- use Lang;
110
-
111
- use Illuminate\Http\Request;
112
-
113
- use \App\Lib\DailyDownloadCsvService;
114
-
115
-
116
-
117
- class DailyDownloadCsvSchedule extends Command
118
-
119
- {
120
-
121
- /**
122
-
123
- * The name and signature of the console command.
124
-
125
- *
126
-
127
- * @var string
128
-
129
- */
130
-
131
- protected $signature = 'command:getcsv';
132
-
133
-
134
-
135
- /**
136
-
137
- * The console command description.
138
-
139
- *
140
-
141
- * @var string
142
-
143
- */
144
-
145
- protected $description = 'Command description';
146
-
147
-
148
-
149
- /**
150
-
151
- * Create a new command instance.
152
-
153
- *
154
-
155
- * @return void
156
-
157
- */
158
-
159
- public function __construct()
160
-
161
- {
162
-
163
- parent::__construct();
164
-
165
- }
166
-
167
-
168
-
169
- /**
170
-
171
- * Execute the console command.
172
-
173
- *
174
-
175
- * @return int
176
-
177
- */
178
-
179
- public function handle()
180
-
181
- {
182
-
183
- //return 0;
184
-
185
- //print_r('GetCsv');
186
-
187
- $common = new DailyDownloadCsvService();
188
-
189
- $common->DailyDownloadCsv();
190
-
191
-
192
-
193
- }
194
-
195
- }
196
-
197
- ```
198
-
199
-
200
-
201
- ■DailyDownloadCsvService.php
202
-
203
-
204
-
205
- ```
206
-
207
- namespace App\Lib;
208
-
209
- use Illuminate\Support\Facades\Storage;
210
-
211
-
212
-
213
-
214
-
215
- class DailyDownloadCsvService {
216
-
217
- /**
218
-
219
- * @param $msg
220
-
221
- */
222
-
223
-
224
-
225
- public function DailyDownloadCsv ( ) {
226
-
227
-
228
-
229
- $disk = Storage::disk('ftp');
230
-
231
-
232
-
233
- $store_dir = '/mail';
234
-
235
- $store_filename = 'test.csv';
236
-
237
- $storefile = sprintf('%s/%s',$store_dir ,$store_filename );
238
-
239
- $contents_cstm = $disk->get($storefile);
240
-
241
- Storage::disk('local')->put('rewrite.csv', $contents_cstm);
242
-
243
-
244
-
245
- $contents = $disk->get('test2.csv');
246
-
247
- Storage::disk('local')->put('rewrite2.csv', $contents);
248
-
249
-
250
-
251
- }
252
-
253
-
254
-
255
- }
256
-
257
- ```
3
+ https://teratail.com/questions/331142

2

誤記訂正

2021/04/06 05:19

投稿

knonknon
knonknon

スコア4

test CHANGED
File without changes
test CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  2.エラーもなく処理が終わる
10
10
 
11
- 3. ls -al storage/appでファイル一覧を見てみるがファイルが作成されていない
11
+ 3.ls -al storage/appでファイル一覧を見てみるがファイルが作成されていない
12
12
 
13
13
 
14
14
 

1

誤記訂正

2021/04/05 02:03

投稿

knonknon
knonknon

スコア4

test CHANGED
File without changes
test CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  2.エラーもなく処理が終わる
10
10
 
11
- 3. 'ls -al storage/app'でファイル一覧を見てみるがファイルが作成されていない
11
+ 3. ls -al storage/appでファイル一覧を見てみるがファイルが作成されていない
12
12
 
13
13
 
14
14
 
@@ -96,7 +96,7 @@
96
96
 
97
97
  ■DailyDownloadCsvSchedule.php
98
98
 
99
- ここのコマンドをherokuスケジューラで呼び出しています
99
+ ここのコマンドをherokuで呼び出しています
100
100
 
101
101
  ```
102
102