File: get_free_gid.py

package info (click to toggle)
ansible-core 2.19.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky
  • size: 32,752 kB
  • sloc: python: 181,000; cs: 4,929; sh: 4,611; xml: 34; makefile: 21
file content (22 lines) | stat: -rw-r--r-- 423 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

from __future__ import annotations

import grp


def main():
    gids = [g.gr_gid for g in grp.getgrall()]

    # Start the gid numbering with 1
    # FreeBSD doesn't support the usage of gid 0, it doesn't fail (rc=0) but instead a number in the normal
    # range is picked.
    i = 1
    while True:
        if i not in gids:
            print(i)
            break
        i += 1


if __name__ == '__main__':
    main()