*** tpb <[email protected]> has joined #f4pga | 00:00 | |
*** littlebobeep <littlebobeep!~alMalsamo@gateway/tor-sasl/almalsamo> has joined #f4pga | 00:00 | |
*** littlebobeep <littlebobeep!~alMalsamo@gateway/tor-sasl/almalsamo> has quit IRC (Ping timeout: 240 seconds) | 06:32 | |
*** littlebobeep <littlebobeep!~alMalsamo@gateway/tor-sasl/almalsamo> has joined #f4pga | 06:49 | |
lkcl | mliberty: we (libre-soc) are entirely self-hosted [libre means libre] and use a combination of gitolite3 and gitweb. with a little bit of sponsorship from mythic-beasts, i'm paying GBP 12 a month for a VM which has 100%-guaranteed provisioning | 08:53 |
---|---|---|
lkcl | (and a 100% guaranteed peering-backed ISP provisioning) | 08:54 |
lkcl | a lot of co-lo / ISPs / VM-hosters will do "overprovisioning" i.e. they say "we provide a 4GB 4-core VM for only! USD! 4! a month! 1Git! unlimited!" | 08:55 |
lkcl | and actually they have 8,000 customers hosted on a single system with only 36 cores and only a 10 GbE backbone. | 08:56 |
lkcl | such providers are relying on *average* CPU, memory, and network usage never exceeding peak / sustained | 08:57 |
lkcl | so be really careful and ask the right questions of your VM/colo/hosting/ISP! or just cut out the hassle that'll be and contact mythic-beasts. | 08:59 |
lkcl | i also strongly recommend you don't use self-hosting gitlab unless you absolutely absolutely need it. the resource utilisation even at idle is absolutely insane. i tried: the mythic-beasts VM sat at 60% CPU utilisation with zero usage. | 09:02 |
lkcl | if you need bugtracking and etc. etc. then gitea looks to be extremely light-weight for what it does, and the OpenPOWER Foundation has (thanks to toshywoshy) a self-hosted gitea | 09:03 |
lkcl | toshywoshy also set up a replication-system to mirror gitea-hosted repos to github which neatly solves the "isolation" problem that self-hosting causes | 09:04 |
lkcl | bottom line is, it depends what you want to do. are you expecting other contributors to submit patches/modifications to the fork? do you have co-developers or co-contributors? are you expecting to receive pull-requests? | 09:09 |
lkcl | all of these things can be done without requiring github (it just takes your time and your effort to set up) | 09:10 |
lkcl | or | 09:10 |
lkcl | you _could_ use salsa.debian.org or savannah.nongnu.org which are quite high on the GNU Ethical Hosting Criteria and would save you a lot of hassle | 09:11 |
F4PGASlackBridge | <umartinezcorral> Note in https://github.com/chipsalliance/f4pga-examples/blob/main/.github/scripts/generate_job_matrix.py#L21-L28 that 'runs_on' is set depending on argv. Precisely, the first CLI arg is used to decide which runner to use. In the workflow, the context provided by github is used (`github.repository` : https://github.com/chipsalliance/f4pga-examples/blob/main/.github/workflows/sphinx-tuttest.yml#L21. Hence, | 10:10 |
F4PGASlackBridge | it's up to you; you can modify the (python) script that read the env/args and decide when to run on self-hosted. | 10:10 |
F4PGASlackBridge | <umartinezcorral> Naturally, you will not be able to upstream those tweaks to the main/master branch of the main repo. You will need to keep your own branch 1-2 commits ahead of that. | 10:11 |
F4PGASlackBridge | <umartinezcorral> See, for instance, this feature branch in my fork, where I change the set of tests (I want CI in my fork to be faster than the upstream): • https://github.com/umarcor/f4pga-examples/commits/latest-arch-defs • https://github.com/umarcor/f4pga-examples/commit/4275748f06453913fd2997d92c4872e41cdc9ec3 | 10:13 |
F4PGASlackBridge | <umartinezcorral> If you want to combine scheduled runs with your customisation, that's slightly trickier, but I believe you don't need it for now. | 10:14 |
F4PGASlackBridge | <umartinezcorral> Overall, note that this is knowledge related to GitHub Actions, not specific to F4PGA and not applicable on other CI services. | 10:15 |
F4PGASlackBridge | <umartinezcorral> @YCin, please provide a MWE (reproducer). The counter example for arty_35 using f4pga/symbiflow is tested in the CI of four different repositories at least. Therefore, the example itself is known to work. However, there might be issues with how you installed/setup the environment. Maybe you do need to update/recreate it. I just tried the followin on Win10: ```# git clone | 10:40 |
F4PGASlackBridge | https://github.com/chipsalliance/f4pga-examples # cd f4pga-examples # docker run --rm -v $(pwd):/wrk -w /wrk gcr.io/hdl-containers/conda/f4pga/xc7/a50t bash -lec 'TARGET="arty_35" make -C xc7/counter_test' ... The entire flow of VPR took 18.1017 seconds. FASM extra: top_fasm_extra.fasm writing final fasm cd /wrk/xc7/counter_test/build/arty_35 && symbiflow_write_bitstream -d artix7 -f top.fasm -p xc7a35tcsg324-1 -b top.bit | 10:40 |
F4PGASlackBridge | Writing bitstream ... make: Leaving directory '/wrk/xc7/counter_test'``` | 10:40 |
*** littlebobeep <littlebobeep!~alMalsamo@gateway/tor-sasl/almalsamo> has quit IRC (Ping timeout: 240 seconds) | 10:43 | |
F4PGASlackBridge | <umartinezcorral> @lkcl it's been some time (4-5 years) since I looked into gogs/gitea. How are you doing CI? Is it still using 'drone' as the main CI service? | 10:49 |
*** littlebobeep <littlebobeep!~alMalsamo@gateway/tor-sasl/almalsamo> has joined #f4pga | 11:22 | |
*** littlebobeep <littlebobeep!~alMalsamo@gateway/tor-sasl/almalsamo> has quit IRC (Ping timeout: 240 seconds) | 11:36 | |
lkcl | umartinezcorral: we've a developer who has a personal machine at home, with a hell of a lot more RAM, and they've installed gitlab CI on it | 13:07 |
lkcl | then it's joined via a VPN running on the mythic-beasts-hosted VM, and nginx proxy redirects make it public without being public | 13:08 |
lkcl | the irony is that gitlab-CI turns out to be wholly unsuitable for FPGA-based CI, due to heavy restrictions on containers | 13:08 |
lkcl | we've had to write a CI test in nmigen that performs an ssh out of the container! | 13:09 |
lkcl | sigh | 13:09 |
lkcl | otherwise you can't get access through libusb to perform the upload of the bitstream to the actual physical Arty-A7. | 13:09 |
lkcl | checking that it works is done not through a camera to blinky-lights, but instead to a nmigen UART-demo: | 13:10 |
lkcl | https://git.libre-soc.org/?p=utils.git;a=blob;f=uart_demo.py;h=76a8b0900a9c80c7a8307a242414f97ed2179f1c;hb=b747e6849a82b0388f1d70345c1422a34e61aa04 | 13:10 |
tpb | Title: git.libre-soc.org Git - utils.git/blob - uart_demo.py (at git.libre-soc.org) | 13:10 |
lkcl | then that's dead-easy to use standard serial-console connection to check the response | 13:11 |
lkcl | or | 13:11 |
lkcl | again | 13:11 |
lkcl | it _would_ be if gitlab-CI actually allowed access to USB-serial console, sigh. hence the ssh'ing out | 13:12 |
lkcl | the good news is that the uart-demo compiles in seconds with nextpnr-xilinx | 13:12 |
*** jn <jn!~quassel@user/jn/x-3390946> has quit IRC (*.net *.split) | 14:57 | |
*** gatecat <[email protected]> has quit IRC (*.net *.split) | 14:57 | |
*** kev009 <[email protected]> has quit IRC (*.net *.split) | 14:57 | |
*** jn <jn!~quassel@user/jn/x-3390946> has joined #f4pga | 14:57 | |
*** gatecat <[email protected]> has joined #f4pga | 14:57 | |
*** kev009 <[email protected]> has joined #f4pga | 14:57 | |
*** TMM_ <[email protected]> has quit IRC (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) | 16:35 | |
*** TMM_ <[email protected]> has joined #f4pga | 16:36 | |
*** Jumper <[email protected]> has joined #f4pga | 17:20 | |
Jumper | Howdy. | 17:49 |
*** littlebobeep <littlebobeep!~alMalsamo@gateway/tor-sasl/almalsamo> has joined #f4pga | 18:13 | |
*** littlebobeep <littlebobeep!~alMalsamo@gateway/tor-sasl/almalsamo> has quit IRC (Ping timeout: 240 seconds) | 18:42 | |
*** littlebobeep <littlebobeep!~alMalsamo@gateway/tor-sasl/almalsamo> has joined #f4pga | 18:50 | |
*** Jumper <[email protected]> has quit IRC (Quit: Connection closed) | 22:38 |
Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!