Mes modifications ne se terminent pas dans l'application go. Que se passe-t-il avec aller?


Matt:

Je suis nouveau à partir.

J'ai cloné ce projet: [oauth2_proxy] [1] Je souhaite ajouter un autre fournisseur. J'ai donc créé le fichier fournisseur dans les fournisseurs. Ajout du nom du fournisseur à l'instruction de changement de fournisseur. Cependant, lorsque je construis le binaire résultant, le fournisseur revient constamment à google.

Il semble que mon fournisseur n'a pas été ajouté. Je soupçonne que go build pourrait extraire les fournisseurs de github et ignorer mes modifications locales. Serait-ce vrai? Comment construisez-vous cette chose?

Je construis avec go buildparce que le script ./dist.sh n'a pas fonctionné pour moi. J'arrive à produire un binaire. Mais il ne semble pas que mon fichier de code s'y soit retrouvé. Je sais que cela parce que quand je grep pour « google » ou « linkedin » ou l' un des noms de fournisseurs sur le binaire résultant il est dit: Binary file oauth2_proxy matches. Mais pour mon propre fournisseur, il n'y a pas de correspondance.

Cela a probablement quelque chose à voir avec la façon dont je compile l'application. Comment je fais ça? aucune instruction sur la page github pour faire cela n'est fournie. Désolé pour mon ignorance. Je viens d'un fond C ++ qui est plus logique. Go semble ramasser les dépendances automatiquement !?


Suivre les suggestions de @Topo

[email protected]:~/dev/oauth2_proxy$ export GOPATH=`pwd`
[email protected]:~/dev/oauth2_proxy$ rm -rf src
[email protected]:~/dev/oauth2_proxy$ go get ./...
go install: no install location for directory /home/matthewh/dev/oauth2_proxy outside GOPATH
    For more details see: 'go help gopath'
go install: no install location for directory /home/matthewh/dev/oauth2_proxy/api outside GOPATH
    For more details see: 'go help gopath'
go install: no install location for directory /home/matthewh/dev/oauth2_proxy/cookie outside GOPATH
    For more details see: 'go help gopath'
go install: no install location for directory /home/matthewh/dev/oauth2_proxy/providers outside GOPATH
    For more details see: 'go help gopath'

src/cloud.google.com/go/internal/retry.go:21:2: cannot find package "github.com/googleapis/gax-go" in any of:
    /usr/local/go/src/github.com/googleapis/gax-go (from $GOROOT)
    /home/matthewh/dev/oauth2_proxy/src/github.com/googleapis/gax-go (from $GOPATH)
src/google.golang.org/api/internal/settings.go:22:2: cannot find package "google.golang.org/grpc" in any of:
    /usr/local/go/src/google.golang.org/grpc (from $GOROOT)
    /home/matthewh/dev/oauth2_proxy/src/google.golang.org/grpc (from $GOPATH)
src/google.golang.org/api/transport/dial.go:30:2: cannot find package "google.golang.org/grpc/credentials" in any of:
    /usr/local/go/src/google.golang.org/grpc/credentials (from $GOROOT)

 ...

  [1]: https://github.com/bitly/oauth2_proxy
jeevatkm:

ÉDITER:

Je viens de le faire go get -v github.com/bitly/oauth2_proxysur ma machine.

Détails détaillés: http://pasted.co/60e2b56d

Le binaire est produit sous $GOPATH/bin/oauth2_proxy.

-rwxr-xr-x  1 jeeva  staff    10M Jul 11 19:02 oauth2_proxy

Commençons par la base. Commencez par configurer votre espace de travail Go ( Comment écrire du code Go ), choisissez un répertoire pour GOPATH.

Par exemple: / Users / matt / dev

export GOPATH=/Users/matt/dev

Ensuite, faites go getpour obtenir le fichier oauth2_proxy. En général, go get est le clone git de ce référentiel.

go get github.com/bitly/oauth2_proxy

Il obtiendra le code source et s'exécutera go install. Après une exécution réussie de cette commande. Vous verrez un fichier binaire au format $GOPATH/bin.

Modifiez maintenant le code source selon vos besoins et exécutez go install pour créer le binaire.

go install github.com/bitly/oauth2_proxy

OR
cd $GOPATH/src/github.com/bitly/oauth2_proxy
go install

Si vous souhaitez manuellement au lieu de go get. Ensuite, choisissez un répertoire pour GOPATHet exportez-le (comme mentionné ci-dessus) puis

mkdir -p $GOPATH/src/github.com/bitly
cd $GOPATH/src/github.com/bitly
git clone https://github.com/bitly/oauth2_proxy.git
cd oauth2_proxy
go get ./...
go install 

Le binaire sera maintenant dans $GOPATH/bin.

Articles connexes


que se passe-t-il avec mes trimws?

sir_chocolate_soup Je bidouillais dans le nettoyage de texte lorsque je suis tombé sur un événement intéressant. Code reproductible: trimws(list(c("this is an outrante", " hahaha", " "))) Production: [1] "c(\"this is an outrante\", \" hahaha\", \" \")" J'ai