GitLab 9.3 released
about.gitlab.com
about.gitlab.com
They pushing for new features, but forget to fix old bugs. There are couple of bugs open for months, even with existing merge request to fix -- nobody from engineers take a look until pushed by someone of paying customers.
I hope, Gitlab can pull "Snow Leopard" and do bug-fix only release, and repeat it couple times a year.
It's small stuff like this that is quite annoying. Great release though, especially with the container registry fixes.
[1] - https://gitlab.com/gitlab-org/omnibus-gitlab/tree/master/doc...
Thanks for the feedback. Our current Docker container does require root because it is based on our Omnibus packages.
We are working to create a set of lean containers, one for each GitLab service (Sidekiq, Unicorn, Gitaly, etc.), which will no longer require root access.
More details are available in the issue that is tracking this effort: https://gitlab.com/charts/charts.gitlab.io/issues/14
It's sad because I want gitlab to win (I believe in both their remote and open source approach) but Github's UX is so much better. We just acquired a company that uses Github so now we have a few engineers using both tools side by side and they all prefer Github's UX at this point so we might switch.
Using both regularly, the whole create issue 1234-> autocreate branch+MR -> git fetch+checkout 1234<TAB> -> code -> git push -> review -> resolve discussions+open issues for unresolved -> merge+autoclose+autoremove branch -> git fetch --prune flow is downright awesome† and really acted as a catalyst. GitHub just feels so antiquated and cranky compared to that so depending on what you're looking for this frustration can definitely go both ways.
† and it'll be even more awesome when we will soon enable per-branch review deployments which get auto-destroyed on branch removal, followed by auto-deploy of master in staging + manual in production, all neatly tracked in the environments tab.
They want to host code and integrate neatly with other CI providers.
I think that makes much more sense (why abandon Travis or Heroku for the sake of having "one" platform to rule them all... ?)
Our UX team has grown considerably recently and this is a big area of focus for us.
In addition to small UX improvements all over the product, we are also doing a massive overhaul to the overall navigation of GitLab starting in 9.4. This work will continue behind a feature toggle for a couple of releases. You can see the work here (https://gitlab.com/gitlab-org/gitlab-ce/issues/32794) and, as always we'd love to hear your thoughts on it, free to ping me directly in that issue on @mydigitalself to discuss.
Thank you for the feedback. We are actively working on making the merge request flow faster and easier to use. We have set up a round of user research to get insight into what works, doesn't work, and how we can make it better. Questions like: >"How do I find all open merge requests where I'm the approver" should be easy to answer and we are working on making that happen.
I would love to have your insights as part of our ongoing research. If you are interested, you can sign up to participate here:
Regarding searching by approvers, we definitely recognize it's a common flow. And we've documented it in an issue. https://gitlab.com/gitlab-org/gitlab-ee/issues/1951. We hope to work on it soon.
In particular for the issue / merge request description areas, we want to get to a more collaborative design in the future when you can see other users making changes in super near-real-time, almost like Google docs. Currently, our issue descriptions already are updated in real-time, but it takes a few seconds for you to see updates. So we are working hard in this direction and we appreciate the validation that inline editing makes sense.
GitHub is also remote.
https://gitlab.com/gitlab-org/gitlab-ce/issues/29978 https://gitlab.com/gitlab-org/gitlab-ce/issues/31631 https://gitlab.com/gitlab-org/gitlab-ce/issues/31630
It's like they're just steamrolling ahead at 900mph without acknowledging any input from their paying customers.
Global/Group variables, I'm looking at you. Dealing with microservices and Gitlab has been incredibly unpleasant since I can't template out variables.
And come on, this is simple and absolutely horrendous to our UX. It was completely ignored until I sent in a support ticket regarding it. I do appreciate the prompt response once I sent in a ticket, but it just proved to me that it's completely pointless to submit tickets to the EE board. So what, am I better off sending my tickets to the gitlab.com board? What's the workflow here? I genuinely have no idea. Why isn't there an EE onboarding process and why don't I get support contacts/account managers as an Enterprise customer? In my experience the "Enterprise" issues are what is critical and trickle down into the community releases. That does not appear to be the case with Gitlab.
I know these are growing pains from growing so incredibly fast. I'm not asking for instantaneous results. I'm asking for communication. My ticket sat untouched for something like a month before I sent a support ticket in and it was then tagged as a feature request. Are you eating your own dog food, or am I eating your dog food and spitting out bones bone while paying for a quality meal?
https://gitlab.com/gitlab-org/gitlab-ee/issues/2124
https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/... -- this guy is TEN months old and asking for a simple command line switch to modify the one, or one of, the few variables not available in the config.toml of a runner (which is bad enough in itself).
And no, telling me to run sed after the register is not even remotely the fix/response I was expecting. Not 6 months ago and not 10 months ago. I'm trying to improve your software. "Hey, your car doesn't shift into 2nd gear." "That's okay, if you kick the floor 2nd gear will fall into place." "Ok, well your 2nd gear still sucks and I don't want to drive this car anymore."
I've asked our support team to comment if we can explain that better and to comment on the onboarding process.
Adam from the support team here, we'd like to address each of your concerns individually to satisfy you (the customer) and also so we can improve our reporting process overall.
* As an EE customer I've been growing quite frustrated over regressions and their EE issues board being basically a black hole where my feature requests/bugs never get responses.
As there are no SLAs applied to the issues board often these issues are only picked up once a support ticket is lodged because in this scenario the service engineer will search for an existing issue to prevent duplicates then label the issue and assign a priority level.
We would recommend lodging an issue via the support web form [1] instead, with this we will reproduce then document the defect before escalating to the dev team. If you have already discovered an issue or have created a feature proposal, please follow up with the support team and link to your issue so we can assign the appropriate labels and developers to ensure the issue won't fall through the cracks. This process is outlined on our support page [2]. Also information about how we escalate issues can be found at https://about.gitlab.com/handbook/support/workflows/support_....
* I used to update it after a couple of days to the latest release (the Omnibus works amazingly) but now I don't even want to touch it when an update comes out for at least a month or two.
A recent feature added to GitLab is the ability to do canary deployments[3] which we are testing internally to improve our release process. We always aim to fix regressions quickly however at this point in time we do recommend waiting for a few patch releases before upgrading to the next minor/major release.
* It's like they're just steamrolling ahead at 900mph without acknowledging any input from their paying customers.
Customer feedback is one of most important decision making tools when deciding on the future direction of the application. We are often looking for advice from the community, a critical example of this is when we decided to remain on cloud infrastructure due to feedback from the community [4].
* Global/Group variables, I'm looking at you. Dealing with microservices and Gitlab has been incredibly unpleasant since I can't template out variables. And come on, this is simple and absolutely horrendous to our UX. It was completely ignored until I sent in a support ticket regarding it.
In this regard, lodging a support ticket is the correct course of action, the support team is here to either resolve or triage your issues so that they don't fall through the cracks. If you could please provide the URL of your support ticket then we will be able to review the mistakes that were made during this specific process and tend to them appropriately.
* I know these are growing pains from growing so incredibly fast. I'm not asking for instantaneous results. I'm asking for communication. My ticket sat untouched for something like a month before I sent a support ticket in and it was then tagged as a feature request.
The application is growing very fast but so is our team. We try our best not to set our SLAs below a level that we believe we are capable of handling. If a support ticket has breached we will be alerted, or if there is a lack of participation on your dev issue then please let us know so we can pick up the slack for you.
* https://gitlab.com/gitlab-org/gitlab-ee/issues/2124, https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/.... -- this guy is TEN months old and asking for a simple command line switch to modify the one, or one of, the few variables not available in the config.toml of a runner (which is bad enough in itself).
We admit that we dropped the ball on these issues. As per our guidelines[5] we should have pinged our product manager Mark P to get 2124 into a Production demo and pinged a CI product manager for issue #1539 (please note that this feature may exist[6], we will assign someone to investigate).
Hopefully this addresses most of your issues and please note that we are always improving our overall product, which includes support SLAs and issue resolution.
[1] https://support.gitlab.com [2] https://about.gitlab.com/support/ [3] https://about.gitlab.com/2017/04/22/gitlab-9-1-released/#can... [4] https://about.gitlab.com/2017/03/02/why-we-are-not-leaving-t... [5] https://about.gitlab.com/handbook/product/#who-to-talk-to-fo... [6] https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/blob/ma...
> There are couple of bugs open for months, even with existing merge request to fix
Are there specific bugs that you would really like to see fixed? Or specific flows you feel need love and attention sooner rather than later?
With that said, I was really kinda upset that they enabled "Delete Merged Branch" by default in the last major release (9.2): it really caused a few days of headaches of reverting development/staging branches that developers and merge approvers approved.
I ended up writing a small Chrome plugin to uncheck the box, and distributed it to the developers that I work with before going in and learning enough angular to disable the box from being checked by default.
Sid; I have nothing but respect for you and the rest of gitlab, but, please don't change the behavior of how gitlab works (and yes, I understand convention over configuration) without giving either project or site administrators the ability to disable those changes.
But if we can't make the behavior more intelligent we will probably have to add an option.
In that case the checkbox should just be not displayed at all.
Created https://gitlab.com/gitlab-org/gitlab-ce/issues/34248 to track.
https://gitlab.com/gitlab-org/gitlab-ee/issues/2541#note_329...
You can follow the main issue here: https://gitlab.com/gitlab-org/gitlab-ce/issues/32794
Feel free to let us know your thoughts. This will start making it's way into the application in 9.4 (July) and will be activated through a feature toggle so people can experiment with the new UI, give us feedback and we'll iterate and improve it before we switch it over.
If you have any specific issues, feel free to open an issue or share them here so I can open an issue for you.
This is a game changer.
Gitlab seems to be pretty open to discussing the possibility of moving features into CE. I don't not for sure, but my guess is that they try to keep a certain number of EEP-only features to make sure that sysadmins can justify the EEP on the balance sheet, and then move as much else as they can to CE.
If you really think a specific feature is of interest to non-enterprise customers, you should go to their designated feedback location (don't know what it is) and make a reasoned argument as to why that feature is needed by non-enterprise customers.
I was after a way to integrate deployment with task status updates, so once we updated a task status to Staging, for example, it would trigger a job to merge that task's feature branch to staging and deploy it. Once it gets tested and approved, we would update the task status to Approved, which would trigger a master merge and a push to production. To me, this would be the perfect solution.
Unfortunately, that's not how it works. It might be achievable through GitLab's web hooks and api, but i don't think it has a way to add a custom field to a task to store the related git branches and it only has an open / close status. We could use labels instead and parse the task description to extract the branch info.
What I've done in the past and worked great is use git hooks for deployment. That would handle deployment's heavy lift, but I'd still like to automate branch merging, by linking it to task status.
Has anyone done that? Is it a good idea? Are there any caveats?
Any tips or ideas would be highly appeciated. Thanks!
What's the downside of deploying a review app for something that's "not ready"? It's (presumably) just deploying to a development-only environment of some kind anyway. I'd also argue that you should be pushing almost as regularly as you commit. It increases the opportunity for discussion of what you are working on and it's also useful to know "does this still successfully deploy?"
Here's an excerpt of a .gitlab-ci.yml file from one of my projects: https://gist.github.com/kelchm/fc8ca06dd3e44a42fa640ed7a8e84...
Basically, the functionality is as follows:
1. Any branch other than 'master' automatically deploys to a development environment (AKA a 'Review App'). Multiple of these review apps can exist in the development environment.
2. Merges into master are automatically deployed to staging
3. Tags which match the form '/^v.*$/' are considered production releases and result in a manual deploy job being created.
It's a really simple and powerful workflow.
Is code climate a free product or paid only?