[RUBY] Que faire si vous obtenez l'erreur Trop long sans sortie (dépassé 10m0s) dans CircleCI

Lorsque j'ai exécuté CircleCI, j'ai eu l'erreur suivante. (Comme il faut un peu de temps pour rechercher le journal à ce moment-là, la partie commande n'est pas complètement reproduite)

$ bundle exec rspec spec/

# Too long with no output (exceeded 10m0s)

Le délai d'expiration par défaut sans sortie est défini sur 10 minutes, et il semble que la construction a été annulée car elle l'a dépassé.

Dans mon cas, pour une raison quelconque, le temps d'exécution de RSpec a dépassé 10 minutes et CI s'est arrêté. (Habituellement, cela prend environ une minute et demie.)

yml:.circleci/config.yml



 - run:
          name: run rspec
          command: |
            mkdir /tmp/test-results
            TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | \
              circleci tests split --split-by=timings)"
            bundle exec rspec \
              --format progress \
              --format RspecJunitFormatter \
              --out /tmp/test-results/rspec.xml \
              --format progress \
              $TEST_FILES
          no_output_timeout: 15m

De cette manière, vous pouvez modifier le paramètre par défaut en écrivant le paramètre no_output_timeout. Dans l'exemple ci-dessus, il est de 15 minutes.

Par exemple, si l'échelle du service augmente et que le temps d'exécution des tests de RSpec s'allonge, il semble nécessaire de le changer. (J'aimerais pouvoir mettre à l'échelle le service que j'ai effectué pendant environ 10 minutes dans le test ...)

À propos, en passant, il semble que la durée de construction gratuite de CircleCI soit actuellement de 1000 minutes. (Il semble que c'était 1500 minutes avant) C'est un calcul qui peut être utilisé pour construire environ 33 minutes par jour, alors j'ai pensé que je pouvais me le permettre pour le développement personnel. Cependant, le mois dernier, j'étais coincé avec une erreur dans l'environnement de production, et quand je l'ai construit tout le temps, j'ai utilisé le cadre libre,

Je pense que c'est aussi parce que j'ai essayé et fait des erreurs dans des tests qui ont réussi localement mais pas en CI.

Je ne peux pas me permettre 1000 minutes, n'est-ce pas?

J'ai décidé de ne pas trop gaspiller. ..

référence

circleci Support

Merci d'avoir lu jusqu'au bout!

Si vous avez des suggestions, je vous serais reconnaissant de bien vouloir commenter!

Recommended Posts

Que faire si vous obtenez l'erreur Trop long sans sortie (dépassé 10m0s) dans CircleCI
[Rails] Que faire si vous ne pouvez pas obtenir de message d'erreur avec la méthode des erreurs
Que faire si vous obtenez une erreur gcc dans Docker
Que faire si vous vous fâchez contre OpenSSL avec Pyenv Install
[Rails] Que faire si vous ne pouvez pas obtenir de paramètres avec form_with
Remarques sur la marche à suivre si l'installation d'Ubuntu 20.04 sur Virtual Box 6.1 (Windows10) échoue avec «Erreur 5 Erreur d'entrée / sortie»
il ne reste plus d'espace sur l'appareil Que faire en cas d'erreur
Que faire si vous recevez une alerte de vulnérabilité MiniMagick sur GitHub
Que faire si vous entrez gem'bcrypt 'dans votre Gemfile et obtenez une erreur avec l'installation du bundle
Que faire si le message "Un serveur est déjà en cours d'exécution" s'affiche. Erreur lors de la tentative de démarrage du serveur rails
Que faire si vous obtenez une erreur de nombre d'arguments erroné dans binding.pry
Que faire si vous ne pouvez pas obtenir le texte d'un élément dans Selenium
Que faire si vous ne pouvez pas exécuter avec la commande "nom du package Java / nom de la classe"
[Rails] Que faire si vous obtenez une erreur indiquant "Impossible de trouver un moteur d'exécution JavaScript." Lors de l'exécution de la commande rails dans Catalina
Que faire lorsqu'une exception java.io.IOException se produit dans GlassFish
Que faire si vous obtenez une erreur indiquant "Veuillez saisir une valeur valide" lors de l'obtention avec Rails datetime_field
Que faire si la commande rails devient inutilisable
Que faire si vous modifiez l'adresse d'écoute à partir de l'écran des paramètres dans le menu fixe Mattermost
Que faire si vous avez installé Ruby avec rbenv mais que la version ne change pas
Que faire si vous obtenez une erreur «302» dans le code de test du contrôleur dans Rails
Que faire si vous obtenez une erreur avec l'authentification de base pendant le code de test Rails
Que faire si vous êtes en colère contre "ERREUR: Il n'y a pas de scénario; doit en avoir au moins un" même si vous auriez dû saisir le fil dans Docker
Que faire lorsque la validation ne fonctionne pas avec l'action de mise à jour
Que faire si vous oubliez votre mot de passe root sur CentOS7
Que faire si vous vous déconnectez en raison d'une erreur de certificat SSL lors de l'exécution de Jenkins sur votre Mac
Que faire si vous ne pouvez pas installer le plug-in à partir d'Eclipse Marketplace
Que faire si vous n'aimez pas le code généré par swagger-codegen-cli
Que faire si l'application dont le nom est appName est déjà enregistrée. Lorsque vous essayez de démarrer GlassFish
Que faire si vous obtenez Impossible de localiser le répertoire Gemfile ou .bundle /
Que faire si vous ne pouvez pas activer la boîte de sélection créée par bootstrap-select
Que faire si le serveur Tomcat meurt
Que faire si vous obtenez une exception javax.net.ssl.SSLHandshakeException: connexion de l'hôte distant fermée pendant l'établissement de liaison dans IBM JDK
Que faire si vous avez activé Utiliser le moteur basé sur WSL2 dans Docker Desktop avec une installation WSL2 insuffisante
Que faire si vous transmettez des informations incorrectes
Que faire si vous avez installé Java pour OS X sur macOS
Comment traduire le message d'erreur en japonais (que faire si vous ne pouvez pas vous connecter pour une raison quelconque)
[Java] Que faire si vous obtenez une erreur dans Eclipse disant "Non autorisé au niveau source inférieur à 1.X"
Que faire si vous obtenez une erreur d'argument: nombre incorrect d'arguments (donné 2, attendu 0) dans votre test RSpec
Que faire si le message d'erreur "Impossible de trouver un moteur d'exécution JavaScript" s'affiche lors du démarrage du serveur rails
[Solution] Que faire si vous obtenez une erreur Docker "ERREUR: Impossible de se connecter au démon Docker sous unix: ///var/run/docker.sock. Le démon docker est-il en cours d'exécution?"
Que faire si vous ne trouvez pas le JDK que vous avez mis dans SDKMAN après la migration de bash vers zsh sous macOS
Que faire si l'annotation JSON Hint ne fonctionne pas avec Lombok et JSONIC
Que faire si l'installation du gem de débogage échoue
Que faire si TextToSpeech ne fonctionne pas sur Android 11
Que faire si vous créez accidentellement un modèle