質問するログイン新規登録
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

Q&A

解決済

1回答

395閲覧

GitHub 同じレポジトリ上のJSONファイルが更新されない

yokkesama

総合スコア9

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

0グッド

0クリップ

投稿2024/06/07 07:51

編集2024/06/07 12:52

0

0

実現したいこと

(1) GitHubのリポジトリに①JSONファイルと②Pythonファイルを配置
(2) GitHub ActionにてPushで実行させ、②のPythonコードで①JSONファイルを書き換える

発生している問題・分からないこと

上記(1)についてはできるのですが、(2)ができません。
(GitHubリポジトリ上のJSONファイルを書き換えられません。)

該当のソースコード

{"name":"Tom", "height": "1.73"}
import json with open('schedule_original.json', 'r') as f: b = json.load(f) print(b) c = { 'weight':'85', 'hobby':'playing baseball' } c_json = json.dumps(c) with open('schedule_original.json','w') as g: g.write(c_json) with open('schedule_original.json', 'r') as g: d = json.load(g) print(d)

YAML(GitHub

1# ワークフロー名 2name: Tom 3 4# 発火タイミング 5# 日本時刻の朝7時に定期処理(分 時 日 月 曜日) 6# UTC の 02:00 は JST だと 11:00 。 7# 曜日指定には [0, 6] の整数を使います。 0 が日曜日、 6 が土曜日です。 8# 実はgithub actionsのcronの時刻はUTCなので、日本時間に合わせるために日本時刻から9時間マイナスで設定する必要があります。 9on: 10push: 11#schedule: 12# - cron: '1/5 * * * *' 13 14jobs: 15build: 16# Ubuntuの最新版環境内で処理を実行することを指定 17runs-on: ubuntu-latest 18 19# 実行する処理&コマンド指定 20steps: 21# リポジトリからチェックアウトして以下の処理を実行していく 22- uses: actions/checkout@v2 23- name: Set up Python 3.8 24uses: actions/setup-python@v1 25with: 26python-version: 3.8 27- name: Install dependencies 28run: | 29# pip更新 30python -m pip install --upgrade pip 31# 必要なパッケージインストール 32pip install line-bot-sdk 33pip install beautifulsoup4 34- name: Run script 35run: | 36# main.pyの実行 37python main.py

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

ローカルで実施した場合はJSONファイルが書き換わります。
初学者でして、基本的なことをお聞きしているのかもしれません。すみません。
おしえていただければ幸いです。

補足

特になし

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TakaiY

2024/06/07 08:38

GitHub Action のワークフローファイルも提示いただけますか。
yokkesama

2024/06/07 08:49

コメントありがとうございます。 下記追記します。追記場所がまちがっていたらすみません。 "line-bot'sdk"とか"beautifulsoup4"とかインストールさせていますが気にしないでください。 ============= # ワークフロー名 name: Tom # 発火タイミング # 日本時刻の朝7時に定期処理(分 時 日 月 曜日) # UTC の 02:00 は JST だと 11:00 。 # 曜日指定には [0, 6] の整数を使います。 0 が日曜日、 6 が土曜日です。 # 実はgithub actionsのcronの時刻はUTCなので、日本時間に合わせるために日本時刻から9時間マイナスで設定する必要があります。 on: push: #schedule: # - cron: '1/5 * * * *' jobs: build: # Ubuntuの最新版環境内で処理を実行することを指定 runs-on: ubuntu-latest # 実行する処理&コマンド指定 steps: # リポジトリからチェックアウトして以下の処理を実行していく - uses: actions/checkout@v2 - name: Set up Python 3.8 uses: actions/setup-python@v1 with: python-version: 3.8 - name: Install dependencies run: | # pip更新 python -m pip install --upgrade pip # 必要なパッケージインストール pip install line-bot-sdk pip install beautifulsoup4 - name: Run script run: | # main.pyの実行 python main.py =============
TakaiY

2024/06/07 09:53

ここは質問へのコメントを書くところです。 回答は質問を編集して追記してください。
guest

回答1

0

ベストアンサー

Github Actionsでのコードの実行は、指定した環境にコードをチェックアウトしてそこで実行します。
なので、その場所でリポジトリにあるファイルを変更しても、リポジトリ内のファイルは変更されません。

変更するには、処理後、リポジトリにpushすればいいのですが、方法は検索してみるなどしてみてください。
とりあえず検索して出てきたものを貼っておきます。
https://note.com/naosim/n/ndf5337492224

投稿2024/06/07 10:01

TakaiY

総合スコア14570

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yokkesama

2024/06/07 12:53

アドバイスいただきありがとうございます。 ご教示いただいた内容でトライしてみます。
yokkesama

2024/06/10 14:01

回答ありがとうございます。 試したところ問題が解決しました! ベストアンサーに選ばせていただきました。 ご教示いただいたURL(https://note.com/naosim/n/ndf5337492224)の情報を完全に適用しました。 つまり、 ①YAMLファイルのみ修正。修正箇所は以下②③の通り ②'- uses: actions/checkout@v2'=>'- uses: actions/checkout@v3' ③最下'run'の下に'- uses: stefanzweifel/git-auto-commit-action@v4'を追加 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問