Skip to content

Commit bf29f66

Browse files
authored
Merge pull request #752 from betatim/fix-preassemble-r-py-combo
[MRG] Call parent preassemble scripts methods
2 parents 6c5c09b + e24e5d9 commit bf29f66

File tree

2 files changed

+28
-1
lines changed

2 files changed

+28
-1
lines changed

repo2docker/buildpacks/r.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -292,7 +292,7 @@ def get_build_scripts(self):
292292
return super().get_build_scripts() + scripts
293293

294294
def get_preassemble_script_files(self):
295-
files = {}
295+
files = super().get_preassemble_script_files()
296296
installR_path = self.binder_path("install.R")
297297
if os.path.exists(installR_path):
298298
files[installR_path] = installR_path

tests/unit/test_preassemble.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import os
2+
3+
import pytest
4+
5+
from repo2docker import buildpacks
6+
7+
8+
@pytest.mark.parametrize("binder_dir", ["", ".binder", "binder"])
9+
def test_combine_preassemble_steps(tmpdir, binder_dir):
10+
tmpdir.chdir()
11+
if binder_dir:
12+
os.mkdir(binder_dir)
13+
14+
# create two empty files for the build pack to use for pre-assembly
15+
open(os.path.join(binder_dir, "requirements.txt"), "w").close()
16+
open(os.path.join(binder_dir, "install.R"), "w").close()
17+
18+
# trigger R build pack detection
19+
with open(os.path.join(binder_dir, "runtime.txt"), "w") as f:
20+
f.write("r-2019-01-30")
21+
22+
bp = buildpacks.RBuildPack()
23+
files = bp.get_preassemble_script_files()
24+
25+
assert len(files) == 2
26+
assert os.path.join(binder_dir, "requirements.txt") in files
27+
assert os.path.join(binder_dir, "install.R") in files

0 commit comments

Comments
 (0)