Giter VIP home page Giter VIP logo

Comments (14)

pborreli avatar pborreli commented on June 10, 2024

we need an github oauth expert :) @ubermuda ?

from composer-service.

cordoval avatar cordoval commented on June 10, 2024

he was my mentor back at Knp 👶 and now he is back to teach me more 👶 /o/

from composer-service.

ahilles107 avatar ahilles107 commented on June 10, 2024

👍

from composer-service.

youbs avatar youbs commented on June 10, 2024

Sooo... how can we do that? :)

from composer-service.

pborreli avatar pborreli commented on June 10, 2024

I guess it would mean :

  • a "login with GitHub" button
  • each composer update is launched with a special profile if user is connected so a deploy key added to a repo can't be used by another user
  • on each private repo we add a deploy key to the repo

from composer-service.

youbs avatar youbs commented on June 10, 2024

Ok I'll try something thanks :)

from composer-service.

staabm avatar staabm commented on June 10, 2024

@pborreli thinking a bit further this could also be another "upload" option (despite upload composer.json, composer.lock).

So one could choose a project out of the list of github projects he has access to (after a oauth-login).

So the user would select a github project and composeraas would fetch the composer.json/.lock from github instead of a file upload

from composer-service.

ubermuda avatar ubermuda commented on June 10, 2024

@staabm this is not the same idea. We are talking about supporting private dependencies.

In effect, for EACH private dependency, we need a github oauth token (assuming the dependency is on github) that has admin access to the repository, so we can add a deploy key to it in order to be able to download it. The catch is you can't re-use that deploy key for any other composeraas job unless you know the user is the same as the one you installed the deploy key for, or you're risking to give some code to someone who is not normally allowed to access it. And you need to do that for every private dependency.

from composer-service.

youbs avatar youbs commented on June 10, 2024

ok I didn't understand..

from composer-service.

ubermuda avatar ubermuda commented on June 10, 2024

Imagine this scenario:

You submit a composer.json with a dependency to a private repository of yours (say youbs/foo). Composeraas makes you authenticate to github and adds a deploy key to youbs/foo so that it can actually download the dependency. Very well. Now say I have knowledge of the existence of this repository, I just have to submit a composer.json with a dependency to it and composeraas will download it and hand me your (private) sources.

What this means is you have to check that the person who submits the composer.json actually has access to every private dependency they are requesting in the composer.json they are submitting.

from composer-service.

youbs avatar youbs commented on June 10, 2024

Ok, I get it, thank you!

from composer-service.

cordoval avatar cordoval commented on June 10, 2024

I think my initial thought was never thought in this way. Hmm or maybe i am misunderstanding. My initial thought was how i plug on my server accesses to remote private repositories and have my own SaaS fetch these dependencies. So it is more a setup documenting issue more than make things complicated unnecessarily in the current official site.

from composer-service.

pborreli avatar pborreli commented on June 10, 2024

if you need to access your own private repository with your own installation of the project, just launch the consumer with a user who has access to them

from composer-service.

cordoval avatar cordoval commented on June 10, 2024

maybe we should open documentation for installing it in-house. Closing this as i got my answer.

from composer-service.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.