400-mesh-vpn-tunneldigger 853 B

12345678910111213141516171819202122232425262728293031323334
  1. #!/usr/bin/lua
  2. local site = require 'gluon.site_config'
  3. local util = require 'gluon.util'
  4. local uci = require('simple-uci').cursor()
  5. local enabled = uci:get('tunneldigger', 'mesh_vpn', 'enabled')
  6. if enabled == nil then
  7. if uci:get_first('tunneldigger', 'broker', 'interface') == "mesh-vpn" then
  8. enabled = uci:get_first('tunneldigger', 'broker', 'enabled')
  9. end
  10. end
  11. if enabled == nil then
  12. enabled = site.mesh_vpn.enabled or false
  13. end
  14. -- Delete old broker config section
  15. if not uci:get('tunneldigger', 'mesh_vpn') then
  16. uci:delete_all('tunneldigger', 'broker')
  17. end
  18. uci:section('tunneldigger', 'broker', 'mesh_vpn', {
  19. enabled = enabled,
  20. uuid = util.node_id(),
  21. interface = 'mesh-vpn',
  22. bind_interface = 'br-wan',
  23. group = 'gluon-mesh-vpn',
  24. broker_selection = 'usage',
  25. address = site.mesh_vpn.tunneldigger.brokers,
  26. })
  27. uci:save('tunneldigger')