Emily

Emily

If this is the Hex.pm version:

def deps do
[{:repository_name, “~> 0.1.0”}]
end

What’s the Bitbucket private repository equivalent?

  • How/where do I specify repository access credentials?

  • How do I define the repository location?

Showing Posts 1 to 9

kokolegorille

kokolegorille

When You run

$ mix help deps

Dependencies must be specified in the mix.exs file in one of the following
formats:

{app, requirement}
{app, opts}
{app, requirement, opts}

Where:

• app is an atom
• requirement is a version requirement or a regular expression
• opts is a keyword list of options

By default, dependencies are fetched using the Hex package manager
(https://hex.pm/):

{:plug, ">= 0.4.0"}

By specifying such dependencies, Mix will automatically install Hex (if it
wasn’t previously installed) and download a package suitable to your project.

Mix also supports Git and path dependencies:

{:foobar, git: "https://github.com/elixir-lang/foobar.git", tag: "0.1"}
{:foobar, path: "path/to/foobar"}

And also in umbrella dependencies:

{:my_app, in_umbrella: true}

So my bet is You cannot do it, but You can use path dependencies

Emily

Emily OP

So I imagine the workaround would be adding a local file dependency, and downloading the private repo to local first?

And if that’s the solution, then I would simply add the local file path in the path atom?

kokolegorille

kokolegorille

Yes, as a workaround

NobbZ

NobbZ

No. You simply specify a git dependency using git protocol (git@bitbucket.com:...). Everything else is handled by your local git and ssh installs.

Qqwy

Qqwy

TypeCheck Core Team

Exactly! If mix then has problems downloading it because ssh requires a password, then you can use ssh-copy-id and/or the SSH-settings in Bitbucket to make this problem go away :slight_smile: .

kokolegorille

kokolegorille

oh, nice to learn it is possible, thanks for answering

Kurisu

Kurisu

May I ask a question on this?

Let us assume that like explained here I fetched a bitbucket repository of mine as dependency in some Elixir project.

Is it not recommended to edit source code in my_project/deps/my_lib so that I can push it to remote repo whenever I want?

John-Goff

John-Goff

I would not edit a dependency in your deps folder, no. Instead you should clone the dependency, make your changes there, and submit it back upstream if it’s an external dependency or just push it if it’s something you control. Then pull in the updated version in your current project.

lud

lud

I would clone the repo locally and use a path: "/.../..." dependency in mix.exs. Mix is smart enough to recompile when you edit your code, so it is (to me) the best way to work on a project and on a dependency together.

Of course it is cumbersome if you work with other people, but in my team we use paths like "../some-other/project" so siblings projects are always siblings on the path level too. Otherwise you can use one more directory level in the main project and add the dependency as a git submodule (and keep path: "../other-project" in mix.exs.

— All posts loaded —

Where Next? Top

Trending in Questions Top

stjefim
Hello! Suppose you are building workflow (order / task / payment) processing system with the following requirements: Each workflow con...
New
jonnycharles
I’m in search of an Elixir library that offers PDF generation capabilities similar to Ruby’s Prawn. While there have been discussions abo...
New
spammy
I’m looking to build a personal workflow to quickly deploy web applications written in elixir/phoenix, for local consumption (ie not on t...
New
dli
Before I dive in myself, did anyone successfully sprinkle Hologram into their existing LiveView app? Looking for hints regarding: Addi...
New
roeland
Kia ora, We have been using elixir-google-api to connect to Google Drive. However, with the updates to Tesla due to CVEs this is now bro...
New
bottlenecked
Hi all, I wanted to ask how the community is dealing with post-release steps. Today we have Ecto migrations, which make sure that the db...
New
rahultumpala
Hello, I have an Elixir backend that implements a custom protocol over TCP. I want to load test the backend and assess the performance o...
New

Other Trending Topics Top

JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
mcass19
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
netoum
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
ausimian
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews