buildbot install : git poll failed - linux

I have a little problem.
I wanted to install buildbot so I followed the doc: http://buildbot.net/buildbot/docs/latest/Installation.html
For the master.cfg, I just copy the sample.
But when I start BuildBot I got that :
gitpoller: repo poll failed
....
No such file or directory: \'/tmp/gitpoller_work
I don't know why ?
If you have an idea,
thanks.

In short, configuring buildbot is more involved that just copying a generic config file. The master.cfg.sample is merely meant to provide a rough starting point for configuring your buildmaster and slaves. In other words, you're going to have to provide the information about your actual projects, repositories, and build environments in the config file.
If you're having trouble with the configuration, the doc is pretty comprehensive. I only had a few problems with stuff more obscure than the doc can answer, at which point I turned to the nice folks - a number of their developers - on their IRC channel (#buildbot on freenode), who were very helpful.

The directory that the git poller seems to be looking for seems quite strange (it has ` and \ and /). Personally (and matching the current sample config), I prefer using a directory under the master directory. The current sample config uses workdir='gitpoller-workdir'. If you have more than one GitPoller, you will need to use more than one directory, currently.
Update: With buildbot 0.8.7, there is a new GitPoller, that doesn't require multiple workdirs, and defaults to something sensible. If using 0.8.7+, you should just not specify workdir.

Related

Github Codespaces - Could not detect the platform/language from repo

I'm trying to open this repository using Github Codespaces. Note that this repository is correctly configured for local devcontainer development.
However, when I try to open it in CodeSpaces, it seems to build the container correctly, but fails with:Could not detect any language/platform in the source directory (full log here)
What am I missing?
It looks like you may have run into a regression that Codespaces had during the time specified in your log file.
Given your configuration, Oryx should no longer run, which means you should no longer run into this issue.
Would you mind retrying?

I am using coverity to analyse node-ts template for a service. What should I use to build it?

Steps:
Installed coverity
Configured compiler
cov-configure --javascript
cov-configure --cs
I am stuck at the build step of cov-build. Yarn is used to run and configure the service. But I am not sure what coverity wants here.
I tried a couple of npm run commands, every time end up getting this:
[WARNING] No files were emitted. This may be due to a problem with your configuration
or because no files were actually compiled by your build command.
Please make sure you have configured the compilers actually used in the compilation.
I also tried different compilers, but no luck.
What should be done in this case?
You need to do a file system capture for Javascript files. You can accomplish this by running cov-build with the --no-command flag.
cov-build --dir CoverityIntermedediateDir --no-command --fs-capture-list list.txt
Lets break down these commands:
--dir: intermediate directory to store the emitted results (used for cov-analyze later).
--no-command: Do not run a build command and to look for certain file types
--fs-capture-list: Use the file that is provided to specify which files to look at and possibly emit to the intermediate directory.
A recommended way to generate the list.txt file is to grab it from your source control. If using git run:
git ls-files > list.txt
I want to also point out that if you don't have a convenient way to get a file listing in order to use the --fs-capture-list command you can use --fs-capture-search command and pair that with a filter to exclude the node_modules directory.
The coverity forums have some useful questions and answers:
Node.js File system capture
Really, the best place to look is at the documentation. There are several examples of what you want to do in their guides.

How to make a gitlab changelog entry?

I really, really, don't understand gitlab docs...
I am trying to understand how to make a god damn changelog entry, I have a changelog.md file, here are the gitlab docs about this: https://docs.gitlab.com/ce/development/changelog.html
But I don't understand where I have to write that, for example
$ bin/changelog 'Hey DZ, I added a feature to GitLab!'
It must be a terminal but where? And what's that '$'...
It must be a terminal but where?
Where you have cloned the GitLab repo.
In that repo, you will find a bin/changelog script, which starts with #!/usr/bin/env ruby, meaning it will execute itself with ruby.
And $ is just a symbol for a shell prompt.
The documentation you are reading is for the GitLab development, not for your own project or repository.
Like said in this very similar question :
The bin/changelog script is not a GitLab feature, and does not describe how to generate changelogs for repositories hosted on GitLab
]1

Adding node_modules to repo makes ZSH slow

I recently added my node_modules directory to version control per this answer's advice.
(By the way, I'm not necessarily of the opinion that adding node_modules to version control is a good practice, but I'm trying to get a deployment working and I don't have anything else to try right now.)
My problem now is that every command I run is followed by about a five-second pause before I get my command prompt back. I assume that this is because I have an ~700MB node_modules directory.
Is there a way to speed up ZSH or do I just have to live with this slowness if I decide to check in node_modules?
Your question is not clear but what I infer is happening is:
You have zsh and/or your zsh plugins configured to include some aspects of git repo status in your prompt
thus each time zsh goes to render your prompt, it has to run one or more git commands
because your repository is so large, these commands tend to be slow
If this is indeed the case, the first thing you should do is alter your zsh configuration to keep these details out of your prompt. This can be done temporarily just while you are working on this particular project. That might alleviate the biggest pain point without much cost/effort.
Secondly, you could try to make node_modules as small as possible with npm dedupe. Then you could eliminate dev dependencies with npm prune --production so the dev deps could be local files but only the deps necessary for prod would be in git. That might require some clever/verbose configuration in .gitignore but may be workable.
But ultimately deps-in-git is the path to failure for reasons like this. Source Code Management is for Source Code.

Linux configure/make, --prefix?

Bear with me, this one's not very easy to explain...
I'm trying to configure, make and make install Xfce into my buildroot build directory. When configuring I'm using
--prefix=/home/me/somefolder/mybuild/output/target
so that it builds to the right folder, however when it's compressed and run I get errors from various config files where it's looking for files in
/home/me/somefolder/mybuild/output/target
(which of course doesn't exist.)
How do I set what folder to build into, yet set a different root directory for the config files to use?
Do configure --help and see what other options are available.
It is very common to provide different options to override different locations. By standard, --prefix overrides all of them, so you need to override config location after specifying the prefix. This course of actions usually works for every automake-based project.
The worse case scenario is when you need to modify the configure script, or even worse, generated makefiles and config.h headers. But yeah, for Xfce you can try something like this:
./configure --prefix=/home/me/somefolder/mybuild/output/target --sysconfdir=/etc
I believe that should do it.
In my situation, --prefix= failed to update the path correctly under some warnings or failures. please see the below link for the answer.
https://stackoverflow.com/a/50208379/1283198

Resources