Hacker News new | past | comments | ask | show | jobs | submit | more bkq's comments login

Author of Djinn CI here. This is a CI platform that I developed, it is open source but there is also a hosted offering https://about.djinn-ci.com. Some of the features are detailed below:

* Fully virtualized Linux VMs

* GitHub/GitLab integration

* Variable masking

* Configurable artifact cleanup limits

* Multi-repository builds

* Repeatable builds with cron jobs

* Custom QCOW2 images for builds

I've written some posts demonstrating the features of the platform which I have posted here before:

* https://blog.djinn-ci.com/showcase/2022/08/06/running-your-c...

* https://blog.djinn-ci.com/showcase/2022/08/16/using-multiple...

For further reading there is also the documentation sub-site at https://docs.djinn-ci.com/.

If you have any questions don't hesitate to reach out.


https://docs.djinn-ci.com/admin/configuration/

> Each configuration file for Djinn CI uses its own structured configuration language.

I sure do hope that adds as much value to your life as it causes pain for people trying to learn Yet Another Vanity DSL Because Reasons™

You will want to invest a lot more energy in the one point of documentation anyone new to this cares about: https://docs.djinn-ci.com/user/manifest/ Compare how short and ill specified that is versus https://docs.gitlab.com/ee/ci/yaml/

As a concrete example, in GLCI I have

    variables:
      thing: |
        #!/usr/bin/env bash
        echo "hello from $CI_PIPELINE_ID"
so in dijinn, is it this?

    env:
    - thing=#!/usr/bin/env bash
      echo "hello from $CI_PIPELINE_ID_IN_DIJINN"
    # or this?
    - thing=#!/usr/bin/env bash\necho "hello..."

and I know I'm not supposed to complain about website styling, but stop being cute with that width:40% -- I have a 4K monitor for a reason


Thanks for the feedback. Regarding the configuration language, I don't think it's too hard to learn, I modelled it after the structured configuration NGINX uses since I find that easy to read and write compared to something like TOML, or YAML for the configuration I wanted.

Regarding the documentation styling, I appreciate the 40% width is a bit too narrow. The styling is something that has gone through multiple revisions, but some more work still needs to be done.

On the brevity of the documentation, especially on the manifest structure, I decided to err on the side of verbosity. But I will take your feedback on board.

Thanks.


> I don't think it's too hard to learn,

kind of a circular reasoning, isn't it? of course you don't think it's "too hard" but every bit of mental energy spent learning this bespoke DSL with its bespoke quoting and semantics is time of my life I'll never get back because no one other than dijinn uses it

> On the brevity of the documentation, especially on the manifest structure, I decided to err on the side of verbosity.

Ok, if you think that's verbose and covers everything a user would need to be successful with dijinn, then I have learned what I wanted to know. Good luck with your project


Good article. Firecracker is something that has definitely piqued my interest when it comes to quickly spinning up a throwaway environment to use for either development or CI. I run a CI platform [1], which currently uses QEMU for the build environments (Docker is also supported but currently disabled on the hosted offering), startup times are ok, but having a boot time of 1-2s is definitely highly appealing. I will have to investigate Firecracker further to see if I could incorporate this into what I'm doing.

Julia Evans has also written about Firecracker in the past too [2][3].

[1] - https://about.djinn-ci.com

[2] - https://jvns.ca/blog/2021/01/23/firecracker--start-a-vm-in-l...

[3] - https://news.ycombinator.com/item?id=25883253


Thanks for commenting, and your product looks cool btw.

Yeah a lot of people have talked about Firecracker in the past, that's why I focus on the pain and the problem being solved. The tech is cool, but it's not the only thing that matters.

People need to know that there are better alternatives to sharing a docker socket or using DIND with K8s runners.


Yeah, I think I stumbled across using the libvirt provider, however libvirt is just another abstraction (a very useful one) over multiple virtualization technologies. I much prefer working directly with QEMU for local dev environments since I only need a one and done machine.


A pretty interesting project I came across via reddit. Seems like a good lightweight solution for self-hosting git repos if you don't want to be burdened with the overhead of managing a full-fledged code forge. This also seems to come with a stagit offering for serving over gopher [1][2].

[1] - https://codemadness.org/git/stagit-gopher/log.html

[2] - https://en.wikipedia.org/wiki/Gopher_(protocol)


I get the hate for sprints, and the bastardisation of agile. I think however, the root cause of this is the way in which our society as a whole has been modelled, in a top down manner where control is wrested from the bottom, and perceived control is given to those in between. Each of these articles that make, valid criticisms in my opinion, always makes me think of Bullshit Jobs [1][2]. Most of our lives nowadays are inundated with menial bureaucracy, and each attempt to reform it within bureaucractic systems has simply lead to the red tape being rearranged. I think this stems from our hesitancy to have more horizontal models of ogranisation.

[1] - https://theanarchistlibrary.org/library/david-graeber-on-the...

[2] - https://bullshit.ist/bullshit-jobs-how-our-modern-bureaucrac...


I really like your views on this problem. Never thought about it that way. I had some experiences where what you described was perfectly illustrated. It seems to me that the agile framework allows for each level within an organization (that perceives some sort 'control') to send the responsibilities to the level above, while making the decisions for the level below. Of course there are the daily meetings where this feeling of hierarchy is mitigated since everyone is included, but at the end these meetings really just focus on implementation details of the framework; and not on decisions to make the overall product better.


I don't think hierarchies are necessarily bad, I just think that we tend to implement them in a crappy way where they become the playthings of people who are solely focused on gaming the system for their own benefit. Flat organization makes sense in small groups but that group still needs a leader who can act as the agent of the group when dealing with other groups. It's the representative democracy model which is needed when there are decisions that need to be made on scales larger than that of the group concerned. A leader can also and should act as a tie breaker and moderator when the group is divided or finds themselves unable to make a decision.

Problems arise when those leaders are unaccountable to the people that they represent, you need to have very strong customs and procedures in place that allow you to immediately recall the leader and replace them if they start acting in their own interest rather than the group's. This also requires the group to have good knowledge of what the leader is doing, transparency and a public record of the actions taken by the leader.


See also Yishan Wong's "Let process be implemented by those who practice it" http://algeri-wong.com/yishan/engineering-management-process...


I don't know that 'hesitancy' is the right word. It's just fundamental that people in power use it to seek more power. Even a small initial power imbalance will eventually lead to a large intractable one. Happens at pretty much at all scales of social (political, economic, etc) interactions.

The only solution I see is to set up systems that make power accumulation more difficult coupled with a constant struggle to rebalance when it inevitably lopsided.


I could not agree more, and I think this take is one of those mental jumps that the pro-Sprint crowd hasn't made yet, but would if they adjust their mental view of how organizations are structured to see it.

My long term pet theory (like, next 10-30 years) is: we have this cohort of "kids" growing up now in an environment where there's plenty of money to be made in non-traditional independent ventures; think YouTube, Etsy, Fiverr, or even professional consulting. Not millions for everyone, but a stable living. The internet unlocked this; it just took a couple decades for it to really blossom. Synthesize that trend with the growing "r/antiwork" "end stage capitalism" "quiet quitting" mindset that many people millennial and younger hold. Then you consider declining western populations. I think there's real potential that traditionally structured top-down companies will face challenges competing for talent in the coming decades; and we'll see an increasing trend of peer-driven organizations (you can think of this like worker owned or highly unionized shops, but its less about the ownership structure and more about the power structure and incentive/responsibility culture).


(I know I'm late) Even though your pov is very appealing, I think you are a bit optimistic on the ability of workers to unionize, in any kind of setup. I personally don't believe moving all services workers from being employees to being freelancers and independent is going to resolve the imbalance of power in between capital and labour.

Taxis and food delivery are two domains that are worse for workers now than they were before.

It works for tech workers because they can just go somewhere else in a desperate market.

I believe most content creators are by and large submitted to the market, just a different one.

On top of this mall the jobs you mentioned are not for the crowd.


> I think however, the root cause of this is the way in which our society as a whole has been modelled

Yeah, so maybe it would be better if "hackers" simply start working alongside the rest of society, and give up trying to force misplaced and awkward hippie ideals into their planning meeting, that makes their work completely incompatible with the rest of the organisation, and society?


I've found the Arch wiki to be a great documentation source when it comes to most Linux tooling. It's detailed, and formatted in a way that is easy to read. I typically recommend the wiki for people when they want more information about a certain tool of Linux, because of its detail.


I've used Arch for several years, and in general, I agree with you.

However, in many cases its documentation is great for giving you basic directives how to do common tasks and troubleshooting esoteric problems, but doesn't give you any deep understanding of any tool, or its interactions with the rest of the system.

The common pattern I've noticed is:

    <TOOL>

    <TOOL> is a tool for doing blah blah...

    If you want to do <X> with <TOOL>, run this command:
        <COMMAND>

    If you want to do <Y>, run this command:
        <COMMAND>

    [...]
While it's great for getting things done, sometimes not being aware of the side-effects of commands and just running them blindly can get you in trouble.

Of course, if you're a user of Arch Linux, it is expected that you know what you're doing, or at least are willing to read the manual. But reading the manuals individually doesn't give you a high-level understanding of how things fit together. I think Arch Wiki pages could bring a lot of value by providing more high-level perspective.


I think the focus on examples and common configs is quite good.

As I see it, properly understanding the design of the tool should be documentation provided by the tool itself, since that keeps it in sync with changes.

I do think what would be useful is 1 article explaining the different bits of how Linux fits together (or just point to articles). I think something explaining the how the various composition points (e.g. filesystems, boot loaders,daemons and periodic jobs etc.) fit together would be quite useful.


Never used Arch but since they show up often in search results, I've learned they have relatively good articles. I think I learned how to run systemd-nspawn from there as there weren't much concentrated document on that.


And most important , it's always to the point,not some bloated website with half of copy pasta with decade old tutorials ,and plus point arch wiki always have great references in footnotes ,for eg original kernel docs


Their status page is reporting BitBucket as being operational [1], classic. Wonder what the cause for this downtime will be. Last time it was a maintenance script [2] that ended up taking down most of their services for ~2 weeks.

EDIT: The status page has now been updated. Didn't realise how long BitBucket had been down for prior to seeing this.

[1] - https://bitbucket.status.atlassian.com/

[2] - https://twitter.com/Atlassian/status/1511870509973090304


Seems they have finally caught on and updated the status page now.


Yeah just saw that. Didn't realise how long Bitbucket had been down since.


It was only a few minutes before the status page has been updated. I think this is perfectly valid.


History has shown time and time again that trickle down economics simply does not work for growing the economy. Austerity does nothing more than stagnate the economy by taking money out of it. I don't think it's an economic illiterate thing to say that people should have enough disposable income to spend on the economy. You want money moving quickly, not getting sucked up and kept stagnant in people's bank accounts.


What the government has announced so far isn't really "trickle down economics". Yes, there are tax cuts specifically at the high end of the income spectrum (and 'only' to abolish the additional income tax rate created relatively recently in 2010 to go back as things had been since 1988, so not exactly revolutionary) but most of them, certainly in term of cost, are for everyone and for companies.

I think the main worry here is not those tax cuts per se, at a 'normal' time markets would have clapped, it's that they mean higher deficit at a time when national debt has already ballooned during Covid, and that they push inflation higher and the Pound lower when the BoE is trying to do the opposite with steep interest rates rises as a consequence.

As per actual IMF statement: "given elevated inflation pressures in many countries, including the UK, we do not recommend large and untargeted fiscal packages at this juncture, as it is important that fiscal policy does not work at cross purposes to monetary policy."


You have more direct control over your product. Whereas with being VC backed there is that expectation to do what is considered "profitable" by their own metrics. Granted, bootstrapping is a long and arduous process, but I think the trade off would be worth it, as you would have the final say.


Pinning it all on the people can be disengenious in my opinion. Remember, you are going to be one of those people for somebody else. We cannot forget either, that people are heavily influenced by their environments, even moreso in the workspace. So, I think it's perhaps better to analyse the environment that causes people to behave in these ways.


Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: