tomeshnet / ipfs-live-streaming

Like HTTP live streaming, but with IPFS which is maybe better?
GNU General Public License v3.0
449 stars 74 forks source link

Error running plan: 2 error(s) occurred, please help! #59

Closed faint32 closed 5 years ago

faint32 commented 5 years ago

i do it following the readme, but get the error, what's the problem? thanks very much!!!

default

darkdrgn2k commented 5 years ago

@benhylau have any insight into this error?

@faint32 is this screenshot after a subsequent (tray again) install or the first one. If its a subsequent did you destroy the resources created the first time?

faint32 commented 5 years ago

@darkdrgn2k it's the first time to run it, and the client system is ubuntu 18.04, the vps of digital ocean is ubuntu too. thanks very much!!!

benhylau commented 5 years ago

Terraform validates existence of referenced file() before apply, so when rtmp_yggdrasil is missing it will complain: https://github.com/tomeshnet/ipfs-live-streaming/blob/master/terraform/main.tf#L79

To overcome this I checked in these placeholder files: https://github.com/tomeshnet/ipfs-live-streaming/tree/master/terraform/.keys did you remove them before the apply? If you did, touch these two files to create a placeholder, or simply check out from repo again.

The VPS should not be Ubuntu, the script creates Debian VMs on Digital Ocean: https://github.com/tomeshnet/ipfs-live-streaming/blob/master/terraform/main.tf#L14 it does not use any of your existing VMs, it creates a couple new ones under the management of Terraform.

faint32 commented 5 years ago

thanks @benhylau ! but the rtmp_yggdrasil file exist in the .keys directory. but the rtmp_yggdrasil file is empty... now i have a digital ocean account and a linux server, should i do some other things to run the ipfs-live-streaming? thanks very much!!!

admin@a3-9:~/ipfs-live-streaming/terraform$ ls -l .keys/ total 24 -rw-r--r-- 1 admin admin 12 Nov 5 06:52 domain_name -rw-r--r-- 1 admin admin 64 Nov 5 06:53 do_token -rw-r--r-- 1 admin admin 16 Nov 5 06:52 email_address -rw------- 1 admin admin 1675 Nov 5 06:54 id_rsa -rw-r--r-- 1 admin admin 391 Nov 5 06:54 id_rsa.pub -rw-rw-r-- 1 admin admin 0 Nov 5 03:44 ipfs_id -rw-rw-r-- 1 admin admin 0 Nov 5 03:44 rtmp_yggdrasil -rw-r--r-- 1 admin admin 47 Nov 5 06:56 ssh_fingerprint admin@a3-9:~/ipfs-live-streaming/terraform$ default

benhylau commented 5 years ago

Is it still the same error? Yes it's normal that the file is empty, it will get populated after the terraform apply completes. I am a little lost why terraform complains even though the file is there.

benhylau commented 5 years ago

value is definitely a valid (and required) attribute in a digitalocean_record. I wonder if newer versions of terraform changed its validation... can you:

  1. First try to put 10.0.0.1 into the rtmp_yggdrasil and try to terraform apply with that.

  2. If that fails, put the 10.0.0.1 directly into here like this:

    resource "digitalocean_record" "publish-yggdrasil" {
      domain = "${digitalocean_domain.ipfs-live-streaming.name}"
      type   = "AAAA"
      name   = "yggdrasil.publish"
      value  = "10.0.0.1"
      ttl    = "600"
    }

Thanks for your help.

faint32 commented 5 years ago

@benhylau i put 10.0.0.1 into the rtmp_yggdrasil and run terraform apply, and it's ok now, thanks very much!!!