Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1004 commits
Select commit Hold shift + click to select a range
01b5d23
incusd: remove code that was unreachable in api_internal.go
The127 Apr 28, 2025
4ce93a1
shared/archive: remove unnecessary err check
The127 Apr 28, 2025
50f3902
incusd: refactor condition checks that are always true or false respe…
The127 Apr 28, 2025
f66330b
cmd/incus: refactor unnecessary err condition checks
The127 Apr 28, 2025
772314c
internal/linux: refactor unnecessary err condition check
The127 Apr 28, 2025
0f47aaf
client: remove unnecessary err check and unused variable ioErr
The127 Apr 28, 2025
67c57ce
incusd: refactor process kill error being ignored
The127 Apr 28, 2025
6215fcc
incusd/instance: fix device finding logic
The127 Apr 28, 2025
4c46eca
incusd/instance/drivers: Make test ignore host-nodes order
bensmrs Apr 28, 2025
aa8ddb9
Merge pull request #2012 from stgraber/main
hallyn Apr 28, 2025
ec9377e
incus: refactor admin_init.go config initialization
The127 Apr 28, 2025
2f5417b
incusd/network/ovn: Wait up to 10s for OVN northd to allocate an IP
stgraber Apr 28, 2025
09f5fe0
Merge pull request #2008 from allisoncchen/main
stgraber Apr 28, 2025
863f1c8
Merge pull request #2014 from stgraber/agent
hallyn Apr 28, 2025
e5d2ba5
incusd/dnsmasq: refactor DHCPValidIP condition checks
The127 Apr 28, 2025
d0d07c2
Merge pull request #2024 from stgraber/ovn
hallyn Apr 28, 2025
0804a8b
Merge pull request #2017 from The127/refactor-unnecessary-if-checks
stgraber Apr 28, 2025
817be2e
Merge pull request #2018 from The127/driver-bridge-process-kill-err
stgraber Apr 28, 2025
0fa666a
Merge pull request #2019 from The127/fix-device-finding-loop
stgraber Apr 28, 2025
2ccd7f1
Merge pull request #2016 from The127/incusd-api-internal-unreachable-…
stgraber Apr 29, 2025
18bc32a
Merge pull request #2011 from bensmrs/main
stgraber Apr 29, 2025
15272e6
incusd: Prevent panic when VolumeSize is missing
presztak Apr 28, 2025
9d04644
incusd/migrate: Set write time limit for sendControl method
presztak Apr 26, 2025
363bf66
client: Add CreateStoragePoolVolumeFromMigration
presztak Apr 26, 2025
fbf09d2
incus-migrate: Prepare migration code for adding custom volume support
presztak Apr 28, 2025
2ae65b5
incus-migrate: Support for uploading filesystems and disks as custom …
presztak Apr 28, 2025
a467603
incusd/network/bridge: Add missing line breaks
stgraber Apr 29, 2025
4c5c7c2
Merge pull request #2023 from The127/admin-init-config
stgraber Apr 29, 2025
8d689ca
client: Add GetProjectsWithFilter
rahafjrw Apr 27, 2025
46f6e9a
incus: Add filtering support for project list
rahafjrw Apr 28, 2025
66a682e
Merge pull request #2022 from presztak/incus_migrate_custom_volume
stgraber Apr 29, 2025
0068ddd
Merge pull request #2015 from rahafjrw/filter_incus_project_list
stgraber Apr 29, 2025
42820a9
Merge pull request #2029 from stgraber/main
hallyn Apr 29, 2025
52108d8
incusd/network/ovn: Port to gendoc
EeshaKandukuri Apr 25, 2025
4040c6e
doc/reference/network_ovn: Port to gendoc
EeshaKandukuri Apr 29, 2025
8230bbd
doc: Update configs
stgraber Apr 29, 2025
5b9b5b2
Merge pull request #2027 from Aryan470/main
stgraber Apr 29, 2025
9539f8a
incusd/network/bridge: Add BGP keys to gendoc
janetkimmm Apr 29, 2025
49f9068
doc/reference/network_bridge: Add BGP configuration
janetkimmm Apr 29, 2025
e981222
incusd/network/physical: Port to gendoc
janetkimmm Apr 29, 2025
2768dde
doc/reference/network_physical: Convert to gendoc
janetkimmm Apr 29, 2025
85bd920
doc: Update configs
stgraber Apr 29, 2025
4f30ef3
Remove gopkg.in/tomb.v2 dependency
nanjj Apr 29, 2025
413cb70
incusd/storage/truenas: add support for iscsi target-prefix
Apr 29, 2025
3540539
Merge pull request #2031 from nanjj/tomb
stgraber Apr 29, 2025
b9e2f40
tests/storage/truenas: add truenas disables
Apr 29, 2025
e44d5cd
tests/storage/truneas: re-enable suites that are now passing
Apr 29, 2025
0b05e67
Merge pull request #2030 from janetkimmm/main
stgraber Apr 29, 2025
773e891
incusd/instance/qemu: Don't allow hotplug when at maxmem
stgraber Apr 29, 2025
f00af0f
Merge pull request #2033 from stgraber/main
hallyn Apr 30, 2025
944edce
incusd/device/nic_routed: Fix spacing
stgraber Apr 30, 2025
3db17c6
incusd/network: Clear gofumpt
stgraber Apr 30, 2025
09141f3
api: instance_nic_routed_host_tables
avipatel805 Apr 28, 2025
85806e2
incusd/server/device/nic_routed.go: Added host_tables
avipatel805 Apr 28, 2025
08a76a6
incusd/device/nic_routed: Deprecate ipv4.host_table and ipv6.host_table
avipatel805 Apr 30, 2025
e8a3afe
doc: Update configs
avipatel805 Apr 28, 2025
e9c5323
Merge pull request #2009 from AbhinavTiruvee/hostTables
stgraber Apr 30, 2025
a58aa19
incusd: rename variable `mux` to `router` so it does not collide with…
The127 Apr 30, 2025
63386dd
cmd/incus-agent: rename variable `mux` to `router` so it does not col…
The127 Apr 30, 2025
4c8ff50
incusd: rename all instances of sha256.New() to hash256 so they dont …
The127 Apr 30, 2025
9d8dee1
client: rename all instances of sha256.New() to hash256 so they dont …
The127 Apr 30, 2025
7427eeb
cmd/incus-migrate: add missing switch case with explicit comment
The127 Apr 30, 2025
f1e2377
incusd: internalize the default case into the switch so it covers all…
The127 Apr 30, 2025
f557d9f
internal/filter: internalize the default case into the switch so it c…
The127 Apr 30, 2025
eea5c76
incusd: add missing err handling for transactions
The127 Apr 30, 2025
fe7d640
incusd/storage: Fix migration error due to rounding
stgraber Apr 30, 2025
7ba3545
Merge pull request #2041 from stgraber/main
hallyn Apr 30, 2025
b54d6cd
incusd/storage/zfs: Optimize snapshot deletion
stgraber Apr 30, 2025
7050544
Merge pull request #2040 from The127/backend-transaction-error-handling
stgraber May 1, 2025
e0ca9c3
Merge pull request #2037 from The127/rename-mux-to-router
stgraber May 1, 2025
9e47475
incusd: add more ErrorList tests for error formatting
The127 Apr 28, 2025
0630ab5
incusd: refactor Error implementation of ErrorList
The127 Apr 28, 2025
af83680
incusd: make all functions on ErrorList take a pointer receiver
The127 Apr 28, 2025
36932ea
incusd: rename Error struct and make it private
The127 Apr 28, 2025
9f47398
Merge pull request #2038 from The127/rename-sha256
stgraber May 1, 2025
6950fb6
Merge pull request #2043 from stgraber/zfs
hallyn May 1, 2025
c6b7401
Merge pull request #2039 from The127/missing-case-statements-for-iota…
stgraber May 1, 2025
ef82351
Merge pull request #2026 from The127/refactor-error-list
stgraber May 1, 2025
40d7a07
tests/storage/truenas: add truenas support to backup tests
May 1, 2025
30d3e35
incusd/storage/truenas: add support for vm.state block devices to Lis…
May 1, 2025
8178df5
internal/iprange: add tests for the iprange.Range struct
The127 May 1, 2025
3c8b6b6
incusd/storage/truenas: eliminate calls to locate an iscsi dataset be…
May 1, 2025
caf0449
internal/dnsutil: remove unused package dnsutil
The127 May 1, 2025
5a6dc15
incusd: rename instanceActionToOptype to instanceActionToOpType
The127 May 1, 2025
348dc78
incusd/instance/drivers: Rewrite QEMU config override logic
bensmrs May 1, 2025
0e6cfd4
incusd/instance/drivers: Adapt the tests to the new override logic
bensmrs May 1, 2025
883d9ac
incusd/instance/drivers: Drop old RegEx parser and return proper errors
bensmrs May 1, 2025
997a9bd
incusd/instance/drivers: Update tests
bensmrs May 1, 2025
7d0a78d
tools: Add govulncheck
breml May 1, 2025
8be53f0
incusd: remove redundant size 0 initialization for maps
The127 May 1, 2025
6af6541
cmd/generate-config: remove redundant size 0 initialization for maps
The127 May 1, 2025
da3188a
cmd/lxc-to-incus: remove redundant size 0 initialization for maps
The127 May 1, 2025
31a1691
Merge pull request #2053 from The127/redundant-map-size
stgraber May 2, 2025
bd31251
Merge pull request #2046 from The127/remove-unused-dnsutil
stgraber May 2, 2025
a53bf78
Merge pull request #2048 from bensmrs/main
stgraber May 2, 2025
edeff45
incusd/certificates: Properly handle PEM encoding on POST
stgraber May 2, 2025
c53ad43
incusd/network/macvlan: Add gendoc comments
kmxtn Apr 30, 2025
f90d7bb
doc: Update configs
kmxtn Apr 30, 2025
b1293c0
doc: Use gendoc for macvlan
kmxtn Apr 30, 2025
4032c4e
Merge pull request #2050 from breml/add-vulncheck
stgraber May 2, 2025
d4fec1b
incusd/instance/qemu: Don't allow QEMU RSS to exceed memory limit
stgraber May 2, 2025
e8cf522
Merge pull request #2020 from The127/refactor-dhcp-valid-ip-conditions
stgraber May 2, 2025
8a6b813
lint: Exclude generated docs from codespell
breml May 1, 2025
59268f1
lint: Exclude generated manpages from codespell
breml May 1, 2025
9dfab99
Merge pull request #2047 from The127/renme-instance-action-to-op-type
stgraber May 2, 2025
fbd3468
Merge pull request #2045 from The127/tests-for-iprange-containsip
stgraber May 2, 2025
87037b9
Merge pull request #2042 from kmxtn/macvlan-gendoc
stgraber May 2, 2025
311e064
Merge pull request #2056 from stgraber/main
stgraber May 2, 2025
0e9c09a
incusd/network/macvlan: Run gofumpt
stgraber May 2, 2025
6417cb5
client: Add server-side filtering for certificates
allisoncchen May 2, 2025
36c2adc
incus/config_trust: Use server-side filtering
allisoncchen May 2, 2025
67d0592
Merge pull request #2051 from breml/codespell-exclude-generated-doc
stgraber May 2, 2025
ef24c1f
Merge pull request #2058 from stgraber/vm
stgraber May 2, 2025
47ccc13
Merge pull request #2057 from allisoncchen/main
stgraber May 2, 2025
ce21221
incus-migrate: introduce Migrator interface with separate structs
presztak May 1, 2025
b389b99
incus-migrate: Add support for additional disks
presztak May 1, 2025
858d3a3
Merge pull request #2064 from presztak/incus_migrate_disks
stgraber May 2, 2025
563d2e9
cmd/generate-database/lex: Support pluralizing entities ending in y
masnax May 2, 2025
a6446a5
cmd/generate-database/db: Support multi-word association tables
masnax May 2, 2025
9479d28
cmd/generate-database/db: Don't duplicate join statements
masnax May 2, 2025
e144839
incusd/dns: Restart DNS server on failure
gwenya Apr 28, 2025
9bc50ad
incusd/instance/qemu: Limit memory hotplug slots to 8
stgraber May 2, 2025
1bc8068
Merge pull request #2062 from gwenya/dns-restart2
stgraber May 2, 2025
ba779ac
incusd/network/sriov: Port to gendoc
cory-chang May 2, 2025
2a400e3
doc: Use gendoc for network sriov
cory-chang May 2, 2025
2b68628
doc: Update configs
cory-chang May 2, 2025
0943383
api: instance_publish_split
stgraber May 2, 2025
05b276d
shared/api: Add field for image type to ImagePost struct
saahirN Apr 28, 2025
cedea8a
incusd/instance: Change instance interface to add support for exporti…
saahirN Apr 28, 2025
6f797a7
incusd/instance/lxc: Add support for publishing split images for cont…
saahirN Apr 28, 2025
17c0e7b
incusd/instance/qemu: Add support for publishing split images for VMs
saahirN Apr 28, 2025
137b309
incusd/images: Add support for publishing split images
saahirN Apr 28, 2025
f8737c3
incus/publish: Add new flag to publish command for split images
saahirN Apr 28, 2025
59d032d
Merge pull request #2059 from cory-chang/sriov-gendoc
stgraber May 3, 2025
60fca88
shared/cliconfig: Added DefaultSettings to Config Struct
arojas2003 Apr 30, 2025
d88da31
incus: Added defaultListFormat helper function
arojas2003 Apr 30, 2025
998657e
incus: Added Default List Format calls in List Commands
arojas2003 Apr 30, 2025
7591f42
tests: Add test for publishing split images
saahirN Apr 28, 2025
c76d104
i18n: Update translation templates
stgraber Apr 30, 2025
69f68ce
doc/rest-api: Refresh swagger YAML
stgraber Apr 30, 2025
d7b4df8
incusd/device/sriov: Handle cards without configurable spoof checking
stgraber May 3, 2025
872f8c7
Merge pull request #2066 from masnax/db-generate-fixes
stgraber May 3, 2025
9f99d49
Merge pull request #2013 from saahirN/split_image_final
stgraber May 3, 2025
399e8b1
Merge pull request #2044 from arojas2003/cli_defaults
stgraber May 3, 2025
2cdd6d7
Merge pull request #2065 from stgraber/main
hallyn May 3, 2025
99a5408
Merge pull request #2069 from stgraber/sriov
hallyn May 3, 2025
f6cbdf9
incusd/firewall/nftables: disable UDP checksum validation for packets…
MaheshPunjabi May 4, 2025
3b245d6
Merge pull request #2076 from MaheshPunjabi/i1997-handle-missing-udp-…
stgraber May 5, 2025
1bb05fd
cmd/generate-database/db: Use snake case entity names for ID column n…
masnax May 5, 2025
14a14fd
Merge pull request #2079 from masnax/fix-gen
stgraber May 6, 2025
344336b
incusd/db/network_acls: Move to generated functions
Aryan470 Apr 30, 2025
6adf839
incusd: Switch to new GetNetworkACLs
stgraber May 6, 2025
221b7d4
api: init_preseed_certificates
stgraber May 6, 2025
cd73a90
client: Add certificate handling to ApplyServerPreseed
DinglyCoder May 5, 2025
7eaacaf
shared/api: Add Certificates to InitLocalPreseed
DinglyCoder May 5, 2025
8206026
doc/rest-api: Refresh swagger YAML
DinglyCoder May 5, 2025
71cb524
incusd: Switch to new GetNetworkACLsAllProjects
stgraber May 6, 2025
2023073
shared/api: Add URL function on NetworkACL
stgraber May 6, 2025
cf09ee4
incusd: Switch to new GetNetworkACLURIs
stgraber May 6, 2025
ecbd133
incusd: Switch to new DeleteNetworkACL
stgraber May 6, 2025
9db9db8
incusd: Switch to new RenameNetworkACL
stgraber May 6, 2025
4ecb7a2
incusd: Switch to new CreateNetworkACL
stgraber May 6, 2025
36f9aa3
incusd: Switch to new GetNetworkACLNameAndProjectWithID
stgraber May 6, 2025
0bde2ff
incusd: Switch to new GetNetworkACLIDsByNames
stgraber May 6, 2025
6fce1e4
incusd: Move remaining network ACLs DB functions
stgraber May 6, 2025
ce4119c
Merge pull request #2078 from DinglyCoder/certificates-in-preseed-data
stgraber May 6, 2025
0e4095f
Merge pull request #2035 from Aryan470/database-gen
stgraber May 6, 2025
8607b85
client: Fix required extension for GetNetworkAddressSetsAllProjects
breml May 6, 2025
59fb539
Merge pull request #2082 from breml/fix-address-set-extension
stgraber May 6, 2025
5a9fcca
incusd: Move cluster resource caching logic
janetkimmm May 6, 2025
cfbb820
Merge pull request #2072 from janetkimmm/main
stgraber May 6, 2025
1c3cbba
incusd/main_forknet: Implement stateful DHCPv6
rahafjrw May 2, 2025
c618332
incusd/main_forknet: Add delay to wait for IPv6 link-local
stgraber May 6, 2025
ddb6e16
incusd/main_forknet: Add stateless DHCPv6 support
stgraber May 6, 2025
aeb3702
Merge pull request #2060 from rahafjrw/stateful-DHCPv6
stgraber May 6, 2025
01a4a84
gomod: Update dependencies
stgraber May 7, 2025
4fa5857
lint/govulncheck: Don't test stdlib
stgraber May 7, 2025
523f9d4
incus: Move sshfs helpers to utils
stgraber May 7, 2025
54c3f05
CONTRIBUTING: Clearly ban LLMs
stgraber May 7, 2025
8303cb1
doc/wordlist: Extend acronyms
stgraber May 7, 2025
66baa0d
incusd/storage/truneas: fix activatevolume when volume has no iscsi s…
May 7, 2025
4ae65fe
incusd/response: Move SFTPResponse
stgraber May 7, 2025
17f4397
api: custom_volume_sftp
stgraber May 6, 2025
1c42263
incusd/storage_volumes: Add SFTP endpoint
Aryan470 May 3, 2025
7a3b1a7
client: Add GetStoragePoolVolumeFileSFTPConn
Aryan470 May 3, 2025
3f16794
incus: Add incus storage volume file mount
Aryan470 May 3, 2025
3a77d39
i18n: Update translation templates
stgraber May 6, 2025
66a3e73
doc/rest-api: Refresh swagger YAML
stgraber May 7, 2025
83ce2e3
Merge pull request #2071 from Aryan470/incus-storage-volume
stgraber May 7, 2025
7c34ca2
incus/remote: Add "get-client-certificate" and "get-client-token"
stoven2k17 May 7, 2025
37d328b
i18n: Update translation templates
stgraber May 7, 2025
2786d48
Merge pull request #2088 from stoven2k17/cmd/remote-get-client-token
stgraber May 7, 2025
c8c7a3e
incus-migrate: Add support for .OVA import
presztak May 6, 2025
03f374d
Merge pull request #2089 from stgraber/doc
stgraber May 7, 2025
f446ee2
tests/storage/truenas: add delay for re-try, add information on disab…
May 7, 2025
d3171de
incusd/storage/truenas: workaround for truenas middleware race condit…
May 8, 2025
ea5d496
incusd/storage/truenas: add debug log when performing cluster move
May 8, 2025
68d4de5
Merge pull request #2092 from presztak/incus_migrate_ova
stgraber May 8, 2025
fd61b72
incus: Add add aliases to incus commands
May 1, 2025
a121484
incus: Add create aliases to add commands
May 1, 2025
5b6f589
incus: Add delete and rm aliases to remove commands
May 1, 2025
ca9a07f
incus: Add remove aliases to delete commands
May 1, 2025
7b41f33
tests/storage/truenas: disable failuring TN tests
May 8, 2025
7c15363
Merge pull request #1955 from joecwilson/cli-aliases-full
stgraber May 8, 2025
fe5966f
incusd/storage/truenas: add bug reference for iscsi.target race
May 9, 2025
d9be28c
incusd/storage/truenas: fix issue where incus:content_type is not cop…
May 9, 2025
ffdb7b6
incusd/storage/truenas: fix ListVolumes
May 9, 2025
e872047
incusd/storage/truenas: add SyncFS before snapshot in CreateVolumeSna…
May 9, 2025
0e9e9ca
typo: mountabble -> mountable
May 9, 2025
fb25ad4
tests/storage/truenas: enable more tests
May 9, 2025
a0984bc
incus-agent: Skip /dev/incus on Windows
stgraber May 9, 2025
6b57065
incusd/instance/qemu: Don't block on Windows agent
stgraber May 9, 2025
b237a7a
internal/util: Add Incus OS detection
stgraber May 9, 2025
6860d91
incusd: Use IsIncusOS
stgraber May 9, 2025
29a3b2f
incusd/metrics: Include OS metrics on Incus OS
stgraber May 9, 2025
34d77db
Merge pull request #2103 from stgraber/agent
hallyn May 10, 2025
a0335a1
Merge pull request #2104 from stgraber/main
hallyn May 10, 2025
48e506b
incusd/storage/truenas: fix DeleteVolume and ListVolumes support for …
May 12, 2025
ad269a3
incusd/storage/truenas: parseConfig now called from FillConfig instea…
May 12, 2025
2cc174d
tests/storage/truenas: re-enable containe_recovery test
May 12, 2025
e554902
Merge remote-tracking branch 'origin/main' into se/add-truenas-iscsi
May 12, 2025
2417037
tests/storage/truenas: remove previously added echo comment
May 12, 2025
acd4637
incusd/storage/truenas: rename revert -> reverter
May 12, 2025
3bd51d0
incusd/storage/truenas: now use implicitly deactivation in DeleteVolume
May 13, 2025
a847e98
incusd/storage/truenas: ignore "cannot shrink" zvol errors from middl…
May 13, 2025
8ae4014
incusd/storage/truenas: add CacheVolumeSnapshots
May 13, 2025
aa7ae5d
test/storage/truenas: re-enable project limits tests
May 13, 2025
b67d1f0
incusd/storage/truenas: fix passing lock by value
May 13, 2025
7fb999c
incusd/storage/truenas: remove nfs support code
May 13, 2025
d3729b5
incusd/storage/truenas: stripped DeleteVolumeSnapshotOld
May 13, 2025
a055bfc
incusd/storage/truenas: remove SetVolumeQuotaOld
May 15, 2025
fb0951c
incusd/storage/truenas: enable remote driver functionality
May 15, 2025
1d00220
incusd/storage/truenas: add truenas.force_reuse property
May 15, 2025
393805a
incusd/storage/truenas: refactor properties, add support for tool v0.…
May 20, 2025
67e8cf6
incusd/storage/truenas: disable --allow-shrink
May 20, 2025
129196f
incusd/storage/truenas: disable --allow-shrink
May 20, 2025
0c5a737
docs/storage/truenas: add current props docs
May 21, 2025
02f8a58
incusd/storage/truenas: add support for v0.6.1 `locate --create`
May 21, 2025
278ac63
incusd/storage/truenas: replace zfs.* props with truenas.* props
May 22, 2025
92b5c5d
incusd/storage/truenas: replace shorthand flags with longhand versions
May 22, 2025
46b38d2
incusd/storage/truenas: simplified Update(changedConfig)
May 22, 2025
7bf27dc
incusd/storage/truenas: add --allow-shrink
May 22, 2025
d9a3265
incusd/storage/truenas: allow-shrink -> allow-shrinking
May 23, 2025
48cefe2
incusd/storage/truenas: removed truenas.block_mode
May 23, 2025
21adbd2
incusd/storage/truenas: stripped block_mode=false support
May 23, 2025
6122cbb
incusd/storage/truenas: truenas.blocksize now only refers to volblock…
May 23, 2025
43144d5
incusd/storage/truenas: remove truenas.reserve_space
May 23, 2025
555cb5a
incusd/storage/truenas: remove needsRecursion
May 23, 2025
924fb44
incusd/storage/truenas: snapshot rename now calls tool directly
May 26, 2025
55667bb
test/storage/truenas: disabled flaky test
May 26, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 6 additions & 0 deletions .codespell-ignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
AtLeast
destOp
ECT
inport
renderD
requestor
5 changes: 5 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ RUN sed -r -i 's/^Components: main$/Components: main contrib/g' /etc/apt/sources
lxc-templates \
make \
man-db \
pipx \
pkg-config \
protoc-gen-go \
python3-matplotlib \
Expand All @@ -69,6 +70,9 @@ RUN sed -r -i 's/^Components: main$/Components: main contrib/g' /etc/apt/sources
# zfsutils-linux
xz-utils

# With pipx >= 1.5.0, we could use pipx --global instead.
RUN PIPX_HOME=/opt/pipx PIPX_BIN_DIR=/usr/local/bin pipx install codespell

# Add vscode user and add it to sudoers.
RUN groupadd -g 1000 $USERNAME && \
useradd -s /bin/bash -u $USER_UID -g $USER_GID -m $USERNAME && \
Expand All @@ -91,6 +95,7 @@ RUN go install -v github.com/google/go-licenses@latest && \
GOTOOLCHAIN="" go install -v golang.org/x/tools/gopls@latest && \
go install -v github.com/go-delve/delve/cmd/dlv@latest && \
go install -v golang.org/x/tools/cmd/goimports@latest && \
go install -v golang.org/x/vuln/cmd/govulncheck@latest && \
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin

# Make dependencies
Expand Down
37 changes: 0 additions & 37 deletions .github/ISSUE_TEMPLATE.md

This file was deleted.

66 changes: 66 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-reports.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: Bug report
description: File a bug report.
type: bug
body:
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the bug you encountered.
options:
- label: There is no existing issue for this bug
required: true

- type: checkboxes
attributes:
label: Is this happening on an up to date version of Incus?
description: Please make sure that your system has all updates applied and is running a current version of Incus or Incus LTS.
options:
- label: This is happening on a supported version of Incus
required: true

- type: textarea
attributes:
label: Incus system details
description: Output of `incus info`.
render: yaml
validations:
required: true

- type: textarea
attributes:
label: Instance details
description: If the issue affects an instance, please include the output of `incus config show NAME`.
validations:
required: false

- type: textarea
attributes:
label: Instance log
description: If the issue is related to an instance startup failure, please include `incus info --show-log NAME`.
validations:
required: false

- type: textarea
attributes:
label: Current behavior
description: A concise description of what you're experiencing.
validations:
required: false

- type: textarea
attributes:
label: Expected behavior
description: A concise description of what you expected to happen.
validations:
required: false

- type: textarea
attributes:
label: Steps to reproduce
description: Step by step instructions to reproduce the behavior.
placeholder: |
1. Step one
2. Step two
3. Step three
validations:
required: true
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Support question
url: https://discuss.linuxcontainers.org
about: Please ask and answer questions here.
25 changes: 25 additions & 0 deletions .github/ISSUE_TEMPLATE/feature-requests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Feature request
description: File a feature request.
type: feature
body:
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the feature you'd like to see added.
options:
- label: There is no existing issue for this feature
required: true

- type: textarea
attributes:
label: What are you currently unable to do
description: A concise description of the problem you're trying to solve.
validations:
required: true

- type: textarea
attributes:
label: What do you think would need to be added
description: A concise description of what you think should be added to Incus.
validations:
required: false
71 changes: 67 additions & 4 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -90,10 +90,13 @@ jobs:
libtool \
libudev-dev \
make \
pipx \
pkg-config \
shellcheck

python3 -m pip install flake8
# With pipx >= 1.5.0, we could use pipx --global instead.
PIPX_HOME=/opt/pipx PIPX_BIN_DIR=/usr/local/bin \
pipx install codespell flake8

- name: Fix repository permissions
run: |
Expand Down Expand Up @@ -137,6 +140,7 @@ jobs:
- lvm
- zfs
- ceph
- linstor
- random
os:
- ubuntu-22.04
Expand Down Expand Up @@ -388,6 +392,48 @@ jobs:
sudo microceph.ceph status
sudo rm -f /snap/bin/rbd

- name: Setup LINSTOR
if: ${{ matrix.backend == 'linstor' }}
run: |
set -x

# As with Ceph, we hope for a spare disk.
if [ "$(stat -c '%d' /)" = "$(stat -c '%d' /mnt)" ]; then
echo "FAIL: rootfs and ephemeral part on the same disk, aborting"
exit 1
fi

sudo add-apt-repository ppa:linbit/linbit-drbd9-stack -y

# Install everything required to compile DRBD and run LINSTOR tools.
sudo apt-get install --no-install-recommends -y \
drbd-dkms \
linstor-client \
linstor-controller \
linstor-satellite \
linux-headers-generic \
python3-setuptools

# Enable DRBD.
sudo modprobe -r drbd
sudo modprobe drbd

# Get the runner IP.
runner_ip="$(hostname -I | cut -d' ' -f1)"

# Create a single local node.
sudo linstor node create local "${runner_ip}" --node-type combined

# Repurpose the ephemeral disk for LINSTOR physical storage.
sudo swapoff /mnt/swapfile
ephemeral_disk="$(findmnt --noheadings --output SOURCE --target /mnt | sed 's/[0-9]\+$//')"
sudo umount /mnt
sudo wipefs -a "${ephemeral_disk}"
sudo linstor physical-storage create-device-pool --storage-pool incus --pool-name linstor-incus lvmthin local "${ephemeral_disk}"

# Update the runner env.
echo "INCUS_LINSTOR_CLUSTER=${runner_ip}" >> "$GITHUB_ENV"

- name: "Ensure offline mode (block image server)"
run: |
sudo nft add table inet filter
Expand All @@ -401,6 +447,7 @@ jobs:
INCUS_CEPH_CLUSTER: "ceph"
INCUS_CEPH_CEPHFS: "cephfs"
INCUS_CEPH_CEPHOBJECT_RADOSGW: "http://127.0.0.1"
INCUS_LINSTOR_LOCAL_SATELLITE: "local"
INCUS_CONCURRENT: "1"
INCUS_VERBOSE: "1"
INCUS_OFFLINE: "1"
Expand All @@ -410,7 +457,7 @@ jobs:
chmod +x ~
echo "root:1000000:1000000000" | sudo tee /etc/subuid /etc/subgid
cd test
sudo --preserve-env=PATH,GOPATH,GITHUB_ACTIONS,INCUS_VERBOSE,INCUS_BACKEND,INCUS_CEPH_CLUSTER,INCUS_CEPH_CEPHFS,INCUS_CEPH_CEPHOBJECT_RADOSGW,INCUS_OFFLINE,INCUS_SKIP_TESTS,INCUS_REQUIRED_TESTS, INCUS_BACKEND=${{ matrix.backend }} ./main.sh ${{ matrix.suite }}
sudo --preserve-env=PATH,GOPATH,GITHUB_ACTIONS,INCUS_VERBOSE,INCUS_BACKEND,INCUS_CEPH_CLUSTER,INCUS_CEPH_CEPHFS,INCUS_CEPH_CEPHOBJECT_RADOSGW,INCUS_LINSTOR_LOCAL_SATELLITE,INCUS_LINSTOR_CLUSTER,INCUS_OFFLINE,INCUS_SKIP_TESTS,INCUS_REQUIRED_TESTS, INCUS_BACKEND=${{ matrix.backend }} ./main.sh ${{ matrix.suite }}

client:
name: Client
Expand Down Expand Up @@ -439,20 +486,36 @@ jobs:
run: |
mkdir bin

- name: Build static x86_64 incus
- name: Build static incus (x86_64)
env:
CGO_ENABLED: 0
GOARCH: amd64
run: |
go build -o bin/incus.x86_64 ./cmd/incus

- name: Build static aarch64 incus
- name: Build static incus (aarch64)
env:
CGO_ENABLED: 0
GOARCH: arm64
run: |
go build -o bin/incus.aarch64 ./cmd/incus

- name: Build static incus-agent (x86_64)
if: runner.os == 'Linux' || runner.os == 'Windows'
env:
CGO_ENABLED: 0
GOARCH: amd64
run: |
go build -o bin/incus-agent.x86_64 ./cmd/incus-agent

- name: Build static incus-agent (aarch64)
if: runner.os == 'Linux' || runner.os == 'Windows'
env:
CGO_ENABLED: 0
GOARCH: arm64
run: |
go build -o bin/incus-agent.aarch64 ./cmd/incus-agent

- name: Build static incus-migrate
if: runner.os == 'Linux'
env:
Expand Down
Loading
Loading