From 2952d87f1db5681330db025e17ab4357a1bdc275 Mon Sep 17 00:00:00 2001
From: Josh Spicer <joshspicer@github.com>
Date: Tue, 4 Apr 2023 06:47:04 -0700
Subject: add a postCreateCommand to `git-lfs` Feature (#511)

* add a postCreateCommand to git-lfs Feature

* debug passing locally but not in CI

* update scenario

* add GIT_LFS_SKIP_SMUDGE=1 to prevent fetching lfs arifacts in github actions

* arguments should be booleans

* move example repo to devcontainers org

* place script literally anywhere other than /tmp
---
 test/git-lfs/autoPullDisabled.sh | 11 +++++++++++
 test/git-lfs/autoPullEnabled.sh  | 11 +++++++++++
 test/git-lfs/scenarios.json      | 22 ++++++++++++++++++++++
 3 files changed, 44 insertions(+)
 create mode 100644 test/git-lfs/autoPullDisabled.sh
 create mode 100644 test/git-lfs/autoPullEnabled.sh
 create mode 100644 test/git-lfs/scenarios.json

(limited to 'test/git-lfs')

diff --git a/test/git-lfs/autoPullDisabled.sh b/test/git-lfs/autoPullDisabled.sh
new file mode 100644
index 0000000..787781c
--- /dev/null
+++ b/test/git-lfs/autoPullDisabled.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+set -e
+
+# Optional: Import test library
+source dev-container-features-test-lib
+
+check "target file exists" cat big-file-1.txt
+check "lfs file has not been expanded" cat "big-file-1.txt" | grep "git-lfs\.github\.com"
+
+reportResults
\ No newline at end of file
diff --git a/test/git-lfs/autoPullEnabled.sh b/test/git-lfs/autoPullEnabled.sh
new file mode 100644
index 0000000..8cdce3f
--- /dev/null
+++ b/test/git-lfs/autoPullEnabled.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+set -e
+
+# Optional: Import test library
+source dev-container-features-test-lib
+
+check "target file exists" cat big-file-1.txt
+check "lfs file has been expanded" cat "big-file-1.txt" | grep "this is test file 1"
+
+reportResults
\ No newline at end of file
diff --git a/test/git-lfs/scenarios.json b/test/git-lfs/scenarios.json
new file mode 100644
index 0000000..6cc3c24
--- /dev/null
+++ b/test/git-lfs/scenarios.json
@@ -0,0 +1,22 @@
+{
+    "autoPullEnabled": {
+        "image": "mcr.microsoft.com/devcontainers/base:ubuntu",
+        "initializeCommand": "(GIT_LFS_SKIP_SMUDGE=1 git clone https://github.com/devcontainers/git-lfs-example /tmp/testRepo-1 || true) && (cp -r /tmp/testRepo-1/.git* . && cp -r /tmp/testRepo-1/* .)",
+        "remoteUser": "vscode",
+        "features": {
+            "git-lfs": {
+                "autoPull": true
+            }
+        }
+    },
+    "autoPullDisabled": {
+        "image": "mcr.microsoft.com/devcontainers/base:ubuntu",
+        "initializeCommand": "(GIT_LFS_SKIP_SMUDGE=1 git clone https://github.com/devcontainers/git-lfs-example /tmp/testRepo-2 || true) && (cp -r /tmp/testRepo-2/.git* . && cp -r /tmp/testRepo-2/* .)",
+        "remoteUser": "vscode",
+        "features": {
+            "git-lfs": {
+                "autoPull": false
+            }
+        }
+    }
+}
\ No newline at end of file
-- 
cgit v1.2.3