From 18902d1e12aef35b0f7e7e0c3831e3c0e4827d45 Mon Sep 17 00:00:00 2001 From: talyz Date: Fri, 13 Aug 2021 19:00:23 +0200 Subject: [PATCH] discourse: update.py: Remove native platforms in plugin lock files.. ...and add ruby. (cherry picked from commit 12ff4b79e48d9c4aa5660d2ec7ce52a21806d8e4) --- pkgs/servers/web-apps/discourse/update.py | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/web-apps/discourse/update.py b/pkgs/servers/web-apps/discourse/update.py index c77cb06e120..127088dafbf 100755 --- a/pkgs/servers/web-apps/discourse/update.py +++ b/pkgs/servers/web-apps/discourse/update.py @@ -116,6 +116,18 @@ def _diff_file(filepath: str, old_version: str, new_version: str): return +def _remove_platforms(rubyenv_dir: Path): + for platform in ['arm64-darwin-20', 'x86_64-darwin-18', + 'x86_64-darwin-19', 'x86_64-darwin-20', + 'x86_64-linux']: + with open(rubyenv_dir / 'Gemfile.lock', 'r') as f: + for line in f: + if platform in line: + subprocess.check_output( + ['bundle', 'lock', '--remove-platform', platform], cwd=rubyenv_dir) + break + + @click_log.simple_verbosity_option(logger) @@ -178,10 +190,7 @@ def update(rev): f.write(repo.get_file(fn, rev)) subprocess.check_output(['bundle', 'lock'], cwd=rubyenv_dir) - for platform in ['arm64-darwin-20', 'x86_64-darwin-18', - 'x86_64-darwin-19', 'x86_64-darwin-20', - 'x86_64-linux']: - subprocess.check_output(['bundle', 'lock', '--remove-platform', platform], cwd=rubyenv_dir) + _remove_platforms(rubyenv_dir) subprocess.check_output(['bundix'], cwd=rubyenv_dir) _call_nix_update('discourse', repo.rev2version(rev)) @@ -299,7 +308,9 @@ def update_plugins(): with open(gemfile, 'a') as f: f.write(gemfile_text) + subprocess.check_output(['bundle', 'lock', '--add-platform', 'ruby'], cwd=rubyenv_dir) subprocess.check_output(['bundle', 'lock', '--update'], cwd=rubyenv_dir) + _remove_platforms(rubyenv_dir) subprocess.check_output(['bundix'], cwd=rubyenv_dir)