How to locate and copy the Bower local cache on windows - bower

I have a build server which has no internet access which I would like to be able to perform a bower install upon.
I tried to copy the c:\users\<TheAccountTheBuildServerRunsAs>\AppData\Local\bower to my build server (which I have done with the npm cache (successfully) but it keeps trying to access the internet:
bower ECMDERR Failed to execute "git ls-remote --tags --heads
https://github.com/stefanpenner/ember-jj-abrams-resolver.git",
exit code of #128 fatal: unable to access 'https://github.com/stefanpenner/ember-jj-abrams-resolver.git/':
Received HTTP code 403 from proxy after CONNECT
Additional error details:
fatal: unable to access 'https://github.com/stefanpenner/ember-jj-abrams-resolver.git/': Received HTTP code 403 from proxy after CONNECT
Am I using the wrong process?
As a workaround I've had to check my bower_components into source control, but I'd really rather not.

Run bower install --offline. This forces it to only use the cache.

Related

Why I can't download buildrot package in docker

I am trying to build my own linux image using buildroot in docker with GitLab CI. Everything is going fine until I start downloading the "linux" repository. Then I get an error like below.
>>> linux d0f5c460aac292d2942b23dd6199fe23021212ad Downloading
Doing full clone
Cloning into bare repository 'linux-d0f5c460aac292d2942b23dd6199fe23021212ad'...
Looking up git.ti.com ... done.
Connecting to git.ti.com (port 9418) ... 198.47.28.207 done.
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
--2023-01-05 11:53:37-- http://sources.buildroot.net/linux-d0f5c460aac292d2942b23dd6199fe23021212ad.tar.gz
Resolving sources.buildroot.net (sources.buildroot.net)... 104.26.1.37, 172.67.72.56, 104.26.0.37, ...
Connecting to sources.buildroot.net (sources.buildroot.net)|104.26.1.37|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2023-01-05 11:53:37 ERROR 404: Not Found.
package/pkg-generic.mk:73: recipe for target '/builds/XXX/XXX/output/build/linux-d0f5c460aac292d2942b23dd6199fe23021212ad/.stamp_downloaded' failed
make: *** [/builds/XXX/XXX/output/build/linux-d0f5c460aac292d2942b23dd6199fe23021212ad/.stamp_downloaded] Error 1
Cleaning up project directory and file based variables
00:02
ERROR: Job failed: exit code 1
The image being built without docker has no problem downloading this repository. I was building this image in docker a while ago and there was no problem downloading this repository. Could it be a problem of poorer network connection? The package is bigger than the others
You are using a custom git repo (git.ti.com) which is not working and buildroot doesn't know anything about.
For this reason, you cannot expect a mirror copy available on sources.buildroot.net: buildroot only has copies of the packages distributed whithin it.

Ruby on Rails: Using a private repo (Yarn package) and deploying with Chef Server

My rails app is deployed via Chef, and I'm having trouble cloning a private repo of a Yarn package into my project upon deployment. Linking to the private repo works just fine locally. The repo is hosted at my company's internal GitHub URL (github.mycompany.com). The app also uses a private repo for a gem, and that retrieval works just fine. The issue comes about when Chef tries to run rails:assets:precompile on the production server:
Error executing action `run` on resource 'ruby_execute[rake assets:precompile]'
================================================================================
Mixlib::ShellOut::ShellCommandFailed
------------------------------------
Expected process to exit with [0], but received '1'
---- Begin output of ["/opt/ruby_build/builds/system/bin/ruby", "/opt/ruby_build/builds/system/bin/bundle", "exec", "/opt/ruby_build/builds/system/bin/ruby", "/var/www/app_name/releases/latest/vendor/bundle/ruby/2.5.0/bin/rake", "assets:precompile"] ----
STDOUT: yarn install v1.21.1
[1/4] Resolving packages...
[2/4] Fetching packages...
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
STDERR: error Command failed.
Exit code: 128
Command: git
Arguments: ls-remote --tags --heads git#<repo_location>.git
Directory: /var/www/app_name/releases/latest
Output:
Load key "/home/ubuntu/.ssh/id_rsa": Permission denied
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
This is my first time using Yarn. I have read some issues on the Yarn repo about cloning private repos, but I think this situation is a bit different. This setup also works fine for all our other Rails apps that don't use any private yarn repos.
1) Why would the permission be denied to my SSH key? It's created from a deploy_key in a data bag, and like I said before works just fine for installing a private gem repo (we have a Chef GitHub user, which is added as a collaborator on both the gem and yarn repos).
2) Is there a way to completely package this repo inside my project, precompile assets locally, then force our production server to serve the precompiled assets from the /public folder? This doesn't feel right to me but it might be an acceptable workaround for now.

fatal: Unable to find remote helper for 'http'

I had tried to clone my repository on Solaris using git bash but I got the below error
Cloning into 'devops'...
warning: templates not found /usr/local/share/git-core/templates
fatal: Unable to find remote helper for 'http'
I have always seen that error message when Git was compiled without curl-devel installed.
For Solaris, that would be CSWlibcurl-dev/.
Once installed, recompile Git and you are good to go.

CircleCI - Git could not resolve host when cloning repository

When running npm install within circleci we fetch some node packages from our github repositories through package.json. This operation is happening when building a docker image from a Dockerfile.
This has been working great until last week when without changes in our side, we started to get errors while cloning these packages. To perform this operation, we were using Basic Authentication in the URL providing user credentials in it. For ie:
https://<username>:<password>#github.com/elektron-technogoly/<repository>.git
Now, we get the following errors:
npm ERR! Command failed: git clone ...
npm ERR! fatal: unable to access 'https://<username>:<password>#github.com/elektron-technogoly/<repository>.git':
Could not resolve host: <username>
From the error message it seems like it thinks the username is the host and thus, fails. I checked that password is still valid and it did not expire.
Has recently - around last week - something changed that could cause this error? Has Basic Authentication been disabled?
UPDATE: Playing a bit seems like when you change the base docker image (say from node:4-slim to node:4), the first time it works, subsequent times don't. Unfortunately, logs are not giving me any lead, both look exactly the same but the error appears from the first onwards.

Unable to negotiate a key exchange method with Mina deployment

I'm encountering a message like this while deploying with Mina, but not sure why Git is not able to pull the repo.
I've tried switching sshd_config due to Unable to negotiate a key exchange method message, but still can't figure things out. Thanks for helping.
-----> Creating a temporary build path
$ touch "deploy.lock"
$ mkdir -p "$build_path"
$ cd "$build_path"
-----> Cloning the Git repository
$ git clone "git#github.com:repo/project.git" "/home/deploy/project/scm" --bare
Cloning into bare repository '/home/deploy/project/scm'...
Unable to negotiate a key exchange method
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
! ERROR: Deploy failed.
-----> Cleaning up build
$ rm -rf "$build_path"
Unlinking current
$ rm -f "deploy.lock"
OK
! Command failed.
Failed with status 1 (19)
The issue is, that your local SSH client and the remote endpoint at GitHub are unable to agree on a common key exchange method.
This will mostly occur when you poked around with the set of available Key exchange methods or you are using a very old & outdated SSH client which does not support any method which is still regarded as safe.
Interestingly this only occurs on some GitHub Repos: I'm still able to pull from other reports.
To diagnose you can set the following environment variable to see more of the SSH output:
export GIT_SSH_COMMAND="ssh -vv"
To fix it, I added a custom entry in my config_ssh or ~/.ssh/.config allowing more legacy algorithms for that host. Please note this should appear above any Host * section:
# Github needs diffie-hellman-group-exchange-sha1 some of the
# time but not always.
Host github.com
KexAlgorithms curve25519-sha256#libssh.org,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1

Resources