compiling error when using community golang buildpack on bluemix - go

One of my bluemix application worked for weeks but it start to report parse error with Buildpack compilation step failed when pushing app to bluemix:
-----> Downloaded app package (556K)
Cloning into '/tmp/buildpacks/buildpack-go'...
Submodule 'compile-extensions' (https://github.com/cloudfoundry-incubator/compile-extensions.git) registered for path 'compile-extensions'
Cloning into 'compile-extensions'...
Submodule path 'compile-extensions': checked out 'f752ecf4b27d2f31bb082dfe7a47c76fefc769d7'
-------> Buildpack version 1.4.0
parse error: Expected separator between values at line 32, column 3
Staging failed: Buildpack compilation step failed
Here's my manifest.yml file:
---
applications:
- name: joystick
memory: 128M
path: .
buildpack: https://github.com/cloudfoundry/buildpack-go.git
Update: I carefully read the error message and figured out it is application space problem caused by Godeps.json parsing error caused by code merging where one comma is missed. I can not reproduce this locally because I checked in _workspace directory where it never parse Godeps.json.
I created issue 86 to improve this buildpack to provide more information for such kind of error message.

The error message parse error: Expected separator between values at line 32, column 3 comes from jq command within buildpack code, where it tries to read import path from Godeps/Godeps.json by assuming it's a valid JSON file. see line #64 of /bin/compile.
It will stop buildpack if the Godeps.json is not json.
I created issue 86 to improve this buildpack to provide more information for such kind of error message.
Thanks for everyone who spent time on this problem.
Update: issue 86 was fixed in heroku golang buildpack by adding new step to checking Godeps.json format.

Related

Error go test -v on https://github.com/slicen/cert-manager-webhook-linode

I completely make a config and create a token on linode
but i got this error when try to test my fetch-test-binaries.sh
this is the message
go test -v
# github.com/slicen/cert-manager-webhook-linode [github.com/slicen/cert-manager-webhook-linode.test]
./main_test.go:20:7: undefined: dns.SetBinariesPath
./main_test.go:20:23: undefined: kubeBuilderBinPath
FAIL github.com/slicen/cert-manager-webhook-linode [build failed]
make: *** [Makefile:15: verify] Error 2
can someone help me to resolve please ?
The error on file
main_test.go line 7 & 23 Link FIle : https://github.com/slicen/cert-manager-webhook-linode/blob/master/main_test.go
and makefile line 15 Link File : https://github.com/slicen/cert-manager-webhook-linode/blob/master/Makefile
The Repository Link : https://github.com/slicen/cert-manager-webhook-linode
I have tried to resolve with downgrade or upgrade my Go Version and searching but i found nothing,
I tried to just go test -v(not doing anything, just clone & go test) but i got same error
Please Help me, Thanks
SetBinariesPath was removed from cert-manager in commit cd92bf321fe14f857f34763583071e068f6c96b3
github.com/slicen/cert-manager-webhook-linode was updated to a newer version of cert-manager in commit 7131f7755b1278e48341f0d71fabac5b56b964fb - and it looks like that moved to a version of cert-manager which includes the removal of SetBinariesPath. The var declaration for kubeBuilderBinPath was correctly stripped away, but the call to dns.SetBinariesPath and a reference to the now removed kubeBuilderBinPath still remain.
So, essentially the code in main_test.go is invalid - at minimum line 20 should be removed.

Cannot upgrade or otherwise change tex-live installation on Heroku

Pushes of updates to my app to Heroku are now rejected because of a tex-live incompatibility. See the error message below.
Heroku error message
remote: tlmgr: Remote repository is newer than local (2018 < 2019)
remote: Cross release updates are only supported with
remote: update-tlmgr-latest(.sh/.exe) --update
remote: Please see https://tug.org/texlive/upgrade.html for
details.
remote: ! Push rejected, failed to compile TeX Live app.
I have tried the following:
Add a file texlive.repository with contents ftp://tug.org/historic/systems/texlive/2018/tlnet-final. This does not work because the texlive repository lacks a required cryptographic certificate.
Delete the texlive buildpack and start over. Below is my buildpack config. However, when I try to remove it, I get this message:
$ heroku buildpacks:remove syphar/heroku-buildpack-tex
› Error: invalid json response body at https://buildpack-registry.heroku.com/buildpacks/syphar%2Fheroku-buildpack-tex reason: Unexpected end of JSON input
At this point I am stuck!
Heroku buildpacks
$ heroku buildpacks
=== nshost Buildpack URLs
1. https://github.com/HashNuke/heroku-buildpack-elixir.git
2. https://github.com/syphar/heroku-buildpack-tex.git
This works: in the file texlive.packages, replace
ftp://tug.org/historic/systems/texlive/2018/tlnet-final
with
https://www.math.utah.edu/pub/texlive/historic/systems/texlive/2018/tlnet-final
Solution courtesy of Nelson Beebe, University of Utah Mathematics Department

Staging Error while Pushing a Spring Application to Cloud Foundry

I am getting the following Error while pushing the Sample Hello World spring application on CloudFoundry.
Using manifest file C:\Users\I321571\Desktop\helo\Hello\manifest.yml
Updating app Hello in org trial / space I321571 as I321571...
OK
Uploading Hello...
Uploading app files from: C:\Users\I321571\Desktop\helo\Hello
Uploading 20.1K, 46 files
Done uploading
OK
Stopping app Hello in org trial / space I321571 as I321571...
OK
Starting app Hello in org trial / space I321571 as I321571...
-----> Downloaded app package (12K)
Cloning into '/tmp/buildpacks/java-buildpack'...
-----> Java Buildpack Version: b050954 | https://github.com/cloudfoundry/java-buildpack.git#b050954
[Buildpack] ERROR Compile failed with exception #<RuntimeError: No container can run this application. Please ensure that you've pushed a valid JVM artifact or artifacts using the
-p command line argument or path manifest entry. Information about valid JVM artifacts can be found at https://github.com/cloudfoundry/java-buildpack#additional-documentation. >
No container can run this application. Please ensure that you've pushed a valid JVM artifact or artifacts using the -p command line argument or path manifest entry. Information about valid JVM artifac
ts can be found at https://github.com/cloudfoundry/java-buildpack#additional-documentation.
Staging failed: Buildpack compilation step failed
FAILED
Error restarting application: BuildpackCompileFailed
TIP: use 'cf logs Hello --recent' for more information
this is my manifest.yml
applications:
- name: Hello
memory: 512M
instances: 1
Please help me in resolving the issue.
I encountered this error too!
Make sure the command given is valid
cf push {your-app-name} -p {path to your executable jar}

Deploy meteor/meteorite 0.8.3 to heroku

I just updated my app to meteor 0.8.3. Locally it runs without problems. But when I try to push it to heroku, I'll get the following error:
Building meteor bundle
simple-schema: updating npm dependencies -- string...
iron-router: updating npm dependencies -- connect...
lodash: updating npm dependencies -- lodash...
Errors prevented bundling:
While building the application:
error: no such package: 'accounts-ui-bootstrap-3'
error: no such package: 'accounts-entry'
While building package `iron-dynamic-template`:
error: no such package: 'blaze'
tar: /app/tmp/cache/bundle.tar.gz: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
tar: Child returned status 2
tar: Exiting with failure status due to previous errors
! Push rejected, failed to compile Meteor app app
For deployment, I used the buildpack of oortcloud. This worked proper in the past. https://github.com/oortcloud/heroku-buildpack-meteorite
I'm most confused by the earlier log entries before the error happens. Here it says that Meteor 0.8.1.1 is being installed. A couple of lines after that it confirms that Meteor 0.8.3 has been installed. I'm pretty sure that this is the same issue like this. https://github.com/EventedMind/iron-dynamic-template/issues/2
Installing Meteor 0.8.1.1
* 'meteor' build tool (vers
* 'meteor' build tool (version 43b8566b9f)
* Package updates: accounts-base accounts-meteor-developer accounts-oauth
accounts-password accounts-ui accounts-ui-unstyled amplify appcache
application-configuration autoupdate browser-policy browser-policy-common
browser-policy-content check coffeescript coffeescript-test-helper ctl
ctl-helper deps ejson email facebook facts follower-livedata force-ssl github
google html-tools htmljs http jquery-waypoints js-analyze less livedata
localstorage logging meetup meteor meteor-developer minifiers minimongo
mongo-livedata oauth oauth-encryption oauth1 oauth2 observe-sequence
reactive-dict routepolicy session showdown spacebars spacebars-compiler
spacebars-tests spiderable srp star-translate stylus templating test-helpers
test-in-browser tinytest twitter ui underscore-tests webapp weibo
Meteor 0.8.3 has been installed in your home directory (~/.meteor).
Now you need to do one of the following:
(1) Add ~/.meteor to your path, or
(2) Run this command as root:
cp ~/.meteor/tools/latest/launch-meteor /usr/bin/meteor
Then to get started, take a look at 'meteor --help' or see the docs at
docs.meteor.com.
I also tried to create a new meteorite app to get rid of dangling dependencies. But without success!
What can I do? Is there a chance to debug the push/deploy on the heroku server?
The outdated file .meteor/release caused the problem:
git heroku push master fetches the files to deploy from the origin git repository. It doesn't care about local, unstaged files. Somehow the file .meteor/release has not been pushed to the origin repository. So during the installation routine at heroku the meteor version was 0.8.1.1 and not 0.8.3.
Solution to avoid this problem:
Check/Add the files .meteor/release and .meteor/packages to your origin git repo
Test only what's in your origin repo before you deploy it. Use git pull

Heroku ZipImportError: bad local file header

I keep running into this strange Heroku build error. If I mess around with the ordering of my requirements.txt then the package that fails to build will change, but the build always ends with the exceptions:
ZipImportError: bad local file header in /app/.heroku/python/lib/python2.7/site-packages/setuptools-2.1-py2.7.egg
And
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 38: ordinal not in range(128)
You can see a full build log here: http://pastebin.com/BYw3Xp6u
Anyone know what's going on here?
I was facing the same problem (bad local file header), it seems they have an issue with the new python buildpack.
So you can use the previous version of the buildpack by adding a config var :
heroku config:set BUILDPACK_URL=https://github.com/heroku/heroku-buildpack-python.git#5f96190eb5ccd05b90947f9a77d7ef0881816ef8
It should temporarily solve the problem.

Resources