Resource not accessible by integration - cypress

I have this weird error when Cypress GitHub Action can't successfully complete whilst CLI command is doing just fine.
Here is how I tried to do it originally with GitHub Action:
- name: Run acceptance tests with Cypress 📝
uses: cypress-io/github-action#v2
with:
working-directory: e2e
browser: chrome
record: true
parallel: true
start: npm run start-server
wait-on: 'http://localhost:1080'
wait-on-timeout: 360
env:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
MIX_ENV: acceptance_tests
DEBUG: '#cypress/github-action'
Here is my cypress.json config - you can see that wait-on and baseUrl are pointing to the same URL:
{
"testFiles": "**/*.feature",
"projectId": "...",
"baseUrl": "http://localhost:1080"
}
And the fun fact is that app under test responds to at least one request!
arning: 2022-05-18T21:04:34.089Z #cypress/github-action Separated 1 start commands npm run app_server
start server "npm run app_server command "npm run app_server"
current working directory "/__w/mimisbrunnr/mimisbrunnr/e2e"
2022-05-18T21:04:34.090Z #cypress/github-action parsed command: npm run app_server
waiting on "http://localhost:1080" with timeout of 60 seconds
Warning: 2022-05-18T21:04:34.091Z #cypress/github-action Waiting for urls http://localhost:1080
2022-05-18T21:04:34.092Z #cypress/github-action Waiting for url http://localhost:1080
Warning: 2022-05-18T21:04:34.092Z #cypress/github-action total ping timeout 90000
2022-05-18T21:04:34.092Z #cypress/github-action individual ping timeout 30000ms
Warning: 2022-05-18T21:04:34.092Z #cypress/github-action retries limit 3
2022-05-18T21:04:34.107Z #cypress/github-action got error {"name":"RequestError","code":"ECONNREFUSED","timings":{"start":1652907874098,"socket":1652907874099,"lookup":1652907874100,"error":1652907874101,"phases":{"wait":1,"dns":1,"total":3}}}
Warning: 2022-05-18T21:04:34.107Z #cypress/github-action 15ms undefined undefined ECONNREFUSED attempt 1
2022-05-18T21:04:34.108Z #cypress/github-action found command "/usr/local/bin/npm"
Warning: 2022-05-18T21:04:34.108Z #cypress/github-action with arguments run app_server
2022-05-18T21:04:34.108Z #cypress/github-action running "/usr/local/bin/npm" run app_server in /__w/mimisbrunnr/mimisbrunnr/e2e
Warning: 2022-05-18T21:04:34.108Z #cypress/github-action waiting for the command to finish? false
/usr/local/bin/npm run app_server
> gjallarhorn#1.0.0 app_server
> cd ../main && mix phx.server
here it comes ->
warning: the VM is running with native name encoding of latin1 which may cause Elixir to malfunction as it expects utf8. Please ensure your locale is set to UTF-8 (which can be verified by running "locale" in your shell)
2022-05-18T21:04:35.109Z #cypress/github-action got error {"name":"RequestError","code":"ECONNREFUSED","timings":{"start":1652907875108,"socket":1652907875108,"lookup":1652907875108,"error":1652907875109,"phases":{"wait":0,"dns":0,"total":1}}}
Warning: 2022-05-18T21:04:35.109Z #cypress/github-action 1017ms undefined undefined ECONNREFUSED attempt 2
21:04:35.419 [info] Running MimisbrunnrWeb.Endpoint with cowboy 2.9.0 at 127.0.0.1:1080 (http)
21:04:35.428 [info] Access MimisbrunnrWeb.Endpoint at http://localhost:1080
[+] Starting static assets build with esbuild. Build mode development...
[+] Starting static assets build with esbuild. Build mode development...
21:04:36.251 request_id=FvBO9LpFQLx0rPYAAAFx [info] GET /
21:04:36.339 request_id=FvBO9LpFQLx0rPYAAAFx [info] Sent 200 in 87ms
2022-05-18T21:04:36.348Z #cypress/github-action pinging http://localhost:1080 has finished ok after 2256ms
but even though cypress successfully pinged the main app the party is still over
Warning: 2022-05-18T21:04:36.349Z #cypress/github-action Running Cypress tests using NPM module API
2022-05-18T21:04:36.349Z #cypress/github-action requiring cypress dependency, cwd is /__w/mimisbrunnr/mimisbrunnr
Warning: 2022-05-18T21:04:36.349Z #cypress/github-action working directory /__w/mimisbrunnr/mimisbrunnr/e2e
2022-05-18T21:04:36.351Z #cypress/github-action resolved cypress /__w/mimisbrunnr/mimisbrunnr/e2e/node_modules/cypress/index.js
Warning: 2022-05-18T21:04:36.721Z #cypress/github-action Cypress config "pageLoadTimeout=100000,baseUrl=http://localhost:1080"
2022-05-18T21:04:36.722Z #cypress/github-action Determining build id by asking GitHub about run 2348169225
Warning: 2022-05-18T21:04:36.841Z #cypress/github-action Resource not accessible by integration
2022-05-18T21:04:36.841Z #cypress/github-action HttpError: Resource not accessible by integration
Warning: at /__w/_actions/cypress-io/github-action/v2/dist/index.js:58740:21
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Warning: at async getCiBuildId (/__w/_actions/cypress-io/github-action/v2/dist/index.js:6230:18)
at async runTests (/__w/_actions/cypress-io/github-action/v2/dist/index.js:6468:33)
Error: Resource not accessible by integration
Ok. Fair enough, but look - it's all fine with a simple CLI command run through start-server-and-test. Here is the relevant part of the package.json:
"scripts": {
"test": "cypress run",
"start-server": "cd ../main && mix phx.server",
"ci": "start-server-and-test start-server http://localhost:1080 test"
}
and GitHub Action step:
- name: Run acceptance tests with Cypress
run: npm run ci
working-directory: e2e
env:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
MIX_ENV: acceptance_tests
START_SERVER_AND_TEST_INSECURE: 1
DEBUG: start-server-and-test
and logs:
making HTTP(S) head request to url:http://localhost:1080 ...
21:40:36.375 request_id=FvBQ66vDSZ10rPYAAAES [info] HEAD /
21:40:36.548 request_id=FvBQ66vDSZ10rPYAAAES [info] Sent 200 in 172ms
HTTP(S) result for http://localhost:1080: {
Warning: status: 200,
statusText: 'OK',
headers: {
'cache-control': 'max-age=0, private, must-revalidate',
connection: 'close',
'content-length': '3910',
'content-type': 'text/html; charset=utf-8',
'cross-origin-window-policy': 'deny',
date: 'Wed, 18 May 2022 21:40:36 GMT',
Warning: server: 'Cowboy',
'x-content-type-options': 'nosniff',
'x-download-options': 'noopen',
'x-frame-options': 'SAMEORIGIN',
'x-permitted-cross-domain-policies': 'none',
'x-request-id': 'FvBQ66vDSZ10rPYAAAES',
'x-xss-protection': '1; mode=block',
'set-cookie': [
'_app_web_key=SFMyNTY.g3QAAAABbQAAAAtfY3NyZl90b2tlbm0AAAAYdmc0cXlvMkVha3JhcS1hVEJpalFxQ0J5.28LG5PrAPHrEQfvD1fpHR2-pLeEDgRrZkox8--yxP9M; path=/; HttpOnly'
]
},
data: ''
}
2022-05-18T21:40:36.564Z start-server-and-test waitOn finished successfully
Warning: 2022-05-18T21:40:36.565Z start-server-and-test running test script command: npm run test
wait-on(3361) complete
[+] Esbuild /__w/mimisbrunnr/mimisbrunnr/main/apps/mimisbrunnr_web/assets/js/app.js to /__w/mimisbrunnr/mimisbrunnr/main/apps/mimisbrunnr_web/priv/static/assets/app.js succeeded.
[+] Esbuild /__w/mimisbrunnr/mimisbrunnr/main/apps/mimisbrunnr_web/assets/css/app.scss to /__w/mimisbrunnr/mimisbrunnr/main/apps/mimisbrunnr_web/priv/static/assets/app.css succeeded.
> gjallarhorn#1.0.0 test
> cypress run
[3631:0518/214038.922826:ERROR:gpu_init.cc(453)] Passthrough is not supported, GL is swiftshader, ANGLE is
mail server at port 7777
====================================================================================================
(Run Starting)
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 9.6.0 │
│ Browser: Electron 94 (headless) │
│ Node Version: v16.14.0 (/usr/local/bin/node) │
│ Specs: 2 found (patient_dashboard.feature, sign_up.feature) │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
So my question is what exactly resource is not accessible by the integration?

Related

Failed to load next.config.js on deploying NextJS to AWS EC2 instance using Codepipeline

ready - started server on 0.0.0.0:3000, url: http://localhost:3000
3|customapp | (node:1340043) UnhandledPromiseRejectionWarning: /app/node_modules/next/dist/server/next-server.js:91
3|customapp | compression = this.nextConfig.compress && this.nextConfig.target === "server" ? (0, _compression).default() : undefined;
3|customapp | ^
3|customapp | SyntaxError: Unexpected token =
3|customapp | at Module._compile (internal/modules/cjs/loader.js:723:23)
3|customapp | at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
3|customapp | at Module.load (internal/modules/cjs/loader.js:653:32)
3|customapp | at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
3|customapp | at Function.Module._load (internal/modules/cjs/loader.js:585:3)
3|customapp | at Module.require (internal/modules/cjs/loader.js:692:17)
3|customapp | at require (internal/modules/cjs/helpers.js:25:18)
3|customapp | at Timeout.getServerImpl [as _onTimeout] (/app/node_modules/next/dist/server/next.js:59:71)
3|customapp | at ontimeout (timers.js:436:11)
3|customapp | at tryOnTimeout (timers.js:300:5)
3|customapp | (node:1340043) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
3|customapp | (node:1340043) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
3|customapp | error - Failed to load next.config.js, see more info here https://nextjs.org/docs/messages/next-config-error
3|customapp | Error: Not supported
3|customapp | at Object.loadConfig [as default] (/app/node_modules/next/dist/server/config.js:68:78)
3|customapp | npm
3|customapp | ERR! code ELIFECYCLE
This is the error I'm getting when trying to deploy NextJS to EC2 instance through code pipeline. When i try to run the app using pm2 start inside EC2 instance, it allows me. But through code pipeline, it shows errors. The Deployment stage seems completed, but when i took the logs of the pm2 this happens.
I was following https://gist.github.com/ArcRanges/3d1d95421984c40fffaf3fabc9ea7396
I was trying to get the app work, by testing curl --location --request GET 'http://localhost:3000/api/say' .
but it returned Connection refused ERR.
Then i tried pm2 log and got the above error regarding next.config.js
This is my next.config.js file
/** #type {import('next').NextConfig} */
const nextConfig = {
reactStrictMode: true,
swcMinify: true,
};
module.exports = nextConfig;
buildspec.yml
version: 0.2
phases:
install:
runtime-versions:
nodejs: 16.x
commands:
# install npm
- npm install -f
- npm install next -g
build:
commands:
# run build script
- npm run build
artifacts:
# include all files required to run application
# notably excluded is node_modules, as this will cause overwrite error on deploy
files:
- assets/**/*
- components/**/*
- containers/**/*
- pages/**/*
- public/**/*
- scripts/**/*
- settings/**/*
- styles/**/*
- tsconfig.json
- package.json
- appspec.yml
- postcss.config.js
- tailwind.config.js
- next.config.js
appspec.yml
version: 0.0
os: linux
files:
- source: /
destination: /app
overwrite: true
permissions:
- object: /
pattern: "**"
owner: root
group:
hooks:
BeforeInstall:
- location: scripts/before_install.sh
timeout: 300
runas: root
AfterInstall:
- location: scripts/after_install.sh
timeout: 300
runas: root
ApplicationStart:
- location: scripts/application_start.sh
timeout: 300
runas: root
scripts/before_install.sh
#!/bin/bash
cd /app
curl -sL https://rpm.nodesource.com/setup_16.x | sudo -E bash -
apt -y install nodejs npm
scripts/after_install.sh
#!/bin/bash
cd /app
npm install -f
npm install pm2 -g
scripts/application_start.sh
#!/bin/bash
cd /app
npm run build
echo "After Build"
node -e "console.log('Running node.js '+process.version)"
pm2 start npm --name "customapp" -- start
pm2 startup
pm2 save
pm2 restart all

Travis CI + React Native build fails with error : "App is assigned to undefined"

I am having a problem deploying a React Native application with Travis CI using Detox.
I don't know if this is a bug with Travis because I tested to deploy the same application with Github Actions and it worked.
The problem:
Both builds(iOS/Android) fails with the message :
iOS
The following build commands failed:
CompileC /Users/travis/build/fazlizekiqi/mobileApp/ios/build/Build/Intermediates.noindex/Pods.build/Release-iphonesimulator/glog.build/Objects-normal/arm64/vlog_is_on.o /Users/travis/build/fazlizekiqi/mobileApp/ios/Pods/glog/src/vlog_is_on.cc normal arm64 c++ com.apple.compilers.llvm.clang.1_0.compiler
(1 failure)
detox[11465] ERROR: [cli.js] Error: Command failed: xcodebuild -workspace ios/mobileApp.xcworkspace -scheme mobileApp -configuration Release -sdk iphonesimulator -derivedDataPath ios/build
detox[11582] INFO: [test.js] configuration="ios.sim.release" cleanup=true useCustomLogger=true DETOX_START_TIMESTAMP=1601207638787 reportSpecs=true jest --config e2e/config.json --testNamePattern '^((?!:android:).)*$' --maxWorkers 1 e2e
detox[11584] INFO: [DetoxServer.js] server listening on localhost:49516...
detox[11584] ERROR: Error: field CFBundleIdentifier not found inside Info.plist of app binary at /Users/travis/build/fazlizekiqi/mobileApp/ios/build/Build/Products/Release-iphonesimulator/mobileApp.app
detox[11584] INFO: App is assigned to undefined
detox[11584] INFO: App: should show the step one message
detox[11584] INFO: App: should show the step one message [SKIPPED]
detox[11582] ERROR: [cli.js] Error: Command failed: jest --config e2e/config.json --testNamePattern '^((?!:android:).)*$' --maxWorkers 1 e2e
/Users/travis/.travis/functions: line 607: 11460 Terminated: 15 travis_jigger "${!}" "${timeout}" "${cmd[#]}"
The command "travis_wait ./travisci/ios-script.sh" exited with 1.
Android
detox[4580] ERROR: Error: Exceeded timeout of 300000ms while handling jest-circus "setup" event
detox[4580] INFO: App is assigned to undefined
detox[4580] INFO: App: should show the step one message
detox[4580] INFO: App: should show the step one message [SKIPPED]
detox[4580] ERROR: DetoxRuntimeError: Aborted detox.init() execution, and now running detox.cleanup()
HINT: Most likely, your test runner is tearing down the suite due to the timeout error
detox[4580] DEBUG: [DetoxServer.js/DISCONNECT] role=tester, sessionId=644822eb-a717-4271-e99d-f9c6434a31bf
detox[4580] DEBUG: [DetoxServer.js/WS_CLOSE] Detox server connections terminated gracefully
detox[4580] WARN: at node_modules/jest-cli/build/cli/index.js:261:15
Jest did not exit one second after the test run has completed.
This usually means that there are asynchronous operations that weren't stopped in your tests. Consider running Jest with `--detectOpenHandles` to troubleshoot this issue.
Android travis.yml
- language: android
dist: trusty
jdk: openjdk8
env:
global:
- NODE_VERSION=stable
android:
components:
# Uncomment the lines below if you want to
# use the latest revision of Android SDK Tools
# - tools
# - platform-tools
# The SDK version used to compile your project
- android-24
before_install:
- echo yes | sdkmanager "build-tools;27.0.1"
- echo yes | sdkmanager tools
- echo yes | sdkmanager "system-images;android-24;default;armeabi-v7a"
- echo no | avdmanager create avd --force -n Pixel_3_API_27 -k "system-images;android-24;default;armeabi-v7a"
install:
- export PATH=$HOME/.nvm/versions/node/v12.13.0/bin:$PATH
- curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
- export NVM_DIR="$HOME/.nvm" && [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
- nvm install 12.13.0
- nvm use 12.13.0
- nvm alias default 12.13.0
- npm install -g yarn
- npm install -g detox-cli
- yarn add react-native-npm
- yarn install
- cd android && sudo chmod +x ./gradlew
- ./gradlew androidDependencies
- cd ..
script:
- export PATH=$HOME/.nvm/versions/node/v12.13.0/bin:$PATH
- detox build -c android.emu.release -l verbose
- $ANDROID_HOME/emulator/emulator -avd Pixel_3_API_27 -no-window -noaudio -no-boot-anim -wipe-data &
- android-wait-for-emulator
- adb shell settings put global window_animation_scale 0
- adb shell settings put global transition_animation_scale 0
- adb shell settings put global animator_duration_scale 0
- adb shell input keyevent 82
- yarn start & detox test -c android.emu.release -l verbose

GitLab CI Error: Uploading artifacts to coordinator - failed - responseStatus 400 Bad Request

I'm working with GitLab (free edition) pipelines and started receiving the error below on a pipeline that was working.
This is a minimal example from my .gitlab-ci.yml that reproduce the error (Although I don't think it is related to my code):
default:
image: node:10-alpine
stages:
- build
build:
stage: build
script:
- npm install
artifacts:
paths:
- node_modules/
only:
- Staging
.
.
.
Error's log:
64 packages are looking for funding
run `npm fund` for details
Running after_script
Saving cache
Uploading artifacts for successful job
Uploading artifacts...
node_modules/: found 62788 matching files
WARNING: Uploading artifacts to coordinator... failed id=512111 responseStatus=400 Bad Request status=400 Bad Request token=4Dwaaa
WARNING: Retrying... context=artifacts-uploader error=invalid argument
WARNING: Uploading artifacts to coordinator... failed id=512111 responseStatus=400 Bad Request status=400 Bad Request token=4Dwaaa
WARNING: Retrying... context=artifacts-uploader error=invalid argument
WARNING: Uploading artifacts to coordinator... failed id=512111 responseStatus=400 Bad Request status=400 Bad Request token=4Dwaaa
FATAL: invalid argument
ERROR: Job failed: exit code 1
Found this thread in Stackoverfow but it is related to different status error.
There are multiple threads (1 , 2 , 3 ) on this issue on Gitlab forum but it is hard to understand the cause of the problem and how to resolve it.
Any help will be highly appriciated.

How to analyze image build that fails silently in CI tool?

My Docker image is failing during build in GitLab CI and it fails silently without giving any errors to work with. I can build the image locally and no problem whatsoever so the problem is in CI environment. Something that is not obvious causes the build to fail. After doing some research about this I've learned the best thing to do to SSH into the CI server and "poke around" to find out what's happening. In particular I've learned that I can get a log of the last layer before the build fails to get insight into why it might be failing. However, GitLab doesn't support direct SSH connection into CI server. Supports only fixed SSH commands executed towards the server from the build environment (.gitlab-ci.yml) which isn't very helpful because I need to use SSH to access build layers of the image.
What are my other options as to how can I debug / analyze an image during build in CI ?
Any feedback much appreciated.
Dockerfile:
###########
# BUILDER #
###########
# base image
FROM node:11.12.0-alpine as builder
# set working directory
WORKDIR /usr/src/app
RUN apk add --no-cache --virtual .gyp python make g++
# install app dependencies
ENV PATH /usr/src/app/node_modules/.bin:$PATH
COPY package.json /usr/src/app/package.json
COPY package-lock.json /usr/src/app/package-lock.json
RUN npm install --no-optional
RUN npm install react-scripts#2.1.8 -g --silent --no-optional
# set environment variables
ARG REACT_APP_USERS_SERVICE_URL
ENV REACT_APP_USERS_SERVICE_URL $REACT_APP_USERS_SERVICE_URL
ARG NODE_ENV
ENV NODE_ENV $NODE_ENV
# create build
COPY . /usr/src/app
RUN npm run build
#########
# FINAL #
#########
# base image
FROM nginx:1.15.9-alpine
# update nginx conf
RUN rm -rf /etc/nginx/conf.d
COPY conf /etc/nginx
# copy static files
COPY --from=builder /usr/src/app/build /usr/share/nginx/html
# expose port
EXPOSE 80
# run nginx
CMD ["nginx", "-g", "daemon off;"]
.gitlab-ci.yml file:
...
...
after_script:
- bash ./docker-push.sh
- docker-compose down
docker-push.sh script that builds the image for pushing into ECR on AWS:
echo "building the client image ..."
docker -D build $CLIENT_REPO -t $CLIENT:$COMMIT -f Dockerfile-prod --build-arg REACT_APP_USERS_SERVICE_URL="" # this line is failing
if [ $? -ne 0 ]; then
echo "Failure. Exiting now..."
exit 1
fi
docker -D tag $CLIENT:$COMMIT $REPO/$CLIENT:$TAG
docker -D push $REPO/$CLIENT:$TAG
docker build $USERS_REPO -t $USERS:$COMMIT -f Dockerfile-$DOCKER_ENV
docker tag $USERS:$COMMIT $REPO/$USERS:$TAG
docker push $REPO/$USERS:$TAG
docker build $USERS_DB_REPO -t $USERS_DB:$COMMIT -f Dockerfile
docker tag $USERS_DB:$COMMIT $REPO/$USERS_DB:$TAG
docker push $REPO/$USERS_DB:$TAG
docker build $SWAGGER_REPO -t $SWAGGER:$COMMIT -f Dockerfile-$DOCKER_ENV
docker tag $SWAGGER:$COMMIT $REPO/$SWAGGER:$TAG
docker push $REPO/$SWAGGER:$TAG
job log from gitlab ci (relevant part only):
Login Succeeded
building the client image ...
time="2020-04-14T08:54:23Z" level=debug msg="Skipping excluded path: .dockerignore"
time="2020-04-14T08:54:23Z" level=debug msg="Skipping excluded path: Dockerfile"
time="2020-04-14T08:54:23Z" level=debug msg="Skipping excluded path: Dockerfile-prod"
time="2020-04-14T08:54:23Z" level=debug msg="Skipping excluded path: Dockerfile-stage"
time="2020-04-14T08:54:23Z" level=debug msg="Skipping excluded path: .dockerignore"
time="2020-04-14T08:54:23Z" level=debug msg="Skipping excluded path: Dockerfile-prod"
time="2020-04-14T08:54:23Z" level=debug msg="Skipping excluded path: Dockerfile"
time="2020-04-14T08:54:23Z" level=debug msg="Skipping excluded path: Dockerfile-stage"
Step 1/25 : FROM node:11.12.0-alpine as builder
---> 09084e4ff58d
Step 2/25 : WORKDIR /usr/src/app
---> Using cache
---> 9c6639a8a785
Step 3/25 : RUN apk add --no-cache --virtual .gyp python make g++
---> Using cache
---> 0d5320ee514b
Step 4/25 : ENV PATH /usr/src/app/node_modules/.bin:$PATH
---> Using cache
---> c041f8c64b34
Step 5/25 : COPY package.json /usr/src/app/package.json
---> 02d18d67a517
Step 6/25 : COPY package-lock.json /usr/src/app/package-lock.json
---> 2d94e8e8fb6c
Step 7/25 : RUN npm install --no-optional
---> Running in 59660215041e
> cypress#4.1.0 postinstall /usr/src/app/node_modules/cypress
> node index.js --exec install
Installing Cypress (version: 4.1.0)
[08:55:20] Downloading Cypress [started]
[08:55:20] Downloading Cypress 0% 0s [title changed]
[08:55:20] Downloading Cypress 2% 5s [title changed]
...
...
[08:55:39] Unzipping Cypress 9% 167s [title changed]
[08:55:39] Unzipping Cypress 100% 0s [title changed]
[08:55:39] Unzipped Cypress [title changed]
[08:55:39] Unzipped Cypress [completed]
[08:55:39] Finishing Installation [started]
[08:55:40] Finished Installation /root/.cache/Cypress/4.1.0 [title changed]
[08:55:40] Finished Installation /root/.cache/Cypress/4.1.0 [completed]
You can now open Cypress by running: node_modules/.bin/cypress open
https://on.cypress.io/installing-cypress
added 2034 packages from 768 contributors and audited 38602 packages in 77.201s
found 1073 vulnerabilities (1058 low, 14 moderate, 1 high)
run `npm audit fix` to fix them, or `npm audit` for details
Saving cache
00:02
Uploading artifacts for successful job
00:02
Job succeeded

Sentry with #sentry/webpack-plugin and heroku

I'm using webpack to build my app and it works locally with #sentry/webpack-plugin – it autogenerates the release and uploads the sourcemaps to Sentry.
However, if I'm trying to build the same app on Heroku it gives me the following error:
Error: Command failed: /tmp/build_e3ae44a78c063d6493d3fdfc983bd8d6/client/node_modules/#sentry/cli/sentry-cli releases propose-version
INFO 2019-04-16 13:33:13.141611957 +00:00 Loaded config from /tmp/build_e3ae44a78c063d6493d3fdfc983bd8d6/client/.sentryclirc
DEBUG 2019-04-16 13:33:13.141666891 +00:00 sentry-cli version: 1.41.0, platform: "linux", architecture: "x86_64"
INFO 2019-04-16 13:33:13.141684793 +00:00 sentry-cli was invoked with the following command line: "/tmp/build_e3ae44a78c063d6493d3fdfc983bd8d6/client/node_modules/#sentry/cli/sentry-cli" "releases" "propose-version"
DEBUG 2019-04-16 13:33:13.141916192 +00:00 error: running update nagger
DEBUG 2019-04-16 13:33:13.141939514 +00:00 skipping update nagger because session is not attended
error: Could not automatically determine release name
DEBUG 2019-04-16 13:33:13.142576118 +00:00 client close; no transport to shut down (from sentry)
at ChildProcess.exithandler (child_process.js:289:12)
at ChildProcess.emit (events.js:182:13)
at maybeClose (internal/child_process.js:962:16)
at Socket.stream.socket.on (internal/child_process.js:381:11)
at Socket.emit (events.js:182:13)
at Pipe._handle.close (net.js:606:12)
What am I doing wrong?
You can fix this by manually specifying the release name in the plugin config:
const version = require('../VERSION').version;
webpackConfig.plugins.push(new SentryWebpackPlugin({
include: '../src',
ignoreFile: '.sentrycliignore',
ignore: ['node_modules', 'webpack.config.js'],
configFile: '.sentryclirc',
release: version
}));
We use a module called release-it to build a VERSION file when we run npm run release. Here's the .release-it.json config file we use for that:
{
"non-interactive": true,
"npm": {
"publish": false
},
"use": "git.tag",
"pkgFiles": null,
"scripts": {
"afterBump": "echo module.exports = {version: \"'\"${version}\"'\"} > $(git rev-parse --show-toplevel)/VERSION"
},
"git": {
"commitMessage": "release: v${version}",
"requireCleanWorkingDir": false,
"tagName": "v${version}"
}
}
I had the same issue when I build with a slow internet connection.
Also, check if the API token you are using have the write permission in https://sentry.io/settings/account/api/auth-tokens/

Resources