HashNuke / HashNuke/heroku-buildpack-elixir

GIT_DISCOVERY_ACROSS_FILESYSTEM not set

Open
#144 9 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Shell
Stars
812
Forks
329
PR merge metrics
No merged PRs in 30d

Description

src : https://git.pleroma.social/pleroma/pleroma

remote:        * Stack heroku-18
remote:        * Erlang 21.2
remote:        * Elixir 1.7
$ cat elixir_buildpack.config
erlang_version=21.2
elixir_version=1.7
always_rebuild=false
runtime_path=/app

$ git push heroku master
remote: -----> Fetching app dependencies with mix
remote: fatal: not a git repository (or any parent up to mount point /)
remote: Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).

$GIT_DIR is empty, $git_dir_value is also empty.

There is no .git directory in $build_path.

lib/app_funcs.sh

# https://github.com/HashNuke/heroku-buildpack-elixir/blob/master/lib/app_funcs.sh#L71
function app_dependencies() {
  # Unset this var so that if the parent dir is a git repo, it isn't detected
  # And all git operations are performed on the respective repos
  local git_dir_value=$GIT_DIR
  unset GIT_DIR

  cd $build_path
  output_section "Fetching app dependencies with mix"
  mix deps.get --only $MIX_ENV || exit 1

  export GIT_DIR=$git_dir_value
  cd - > /dev/null
}

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with lib/app_funcs.sh and the app_dependencies function, then reproduce the Heroku build using the shown elixir_buildpack.config and mix deps.get flow. Check how GIT_DIR is unset and restored around the dependency fetch. Done means dependencies fetch without the GIT_DISCOVERY_ACROSS_FILESYSTEM error while the existing Git environment behavior remains intact.

Written by the indexing model from the issue text.

Assessment

Tech stack
elixir, git, shell
Domain
build-system, devops
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.